[lazarus] Win32, make and Makefiles

Marc Weustink weus at quicknet.nl
Tue Apr 25 19:10:24 EDT 2000


Hi,
Whith the help of MvC I solved my make cycle problem.
So some changes to the WinNT notes again.

Marc

At 10:46 25-04-2000 +0200, I wrote:
+ I think what follows next should be part of the win32 HowTo

WinNT Howto.

For building Lazarus on a WinNT sytem follow the win32 Howto.
AFTER you installed fpc (Step 1), keep the following in mind:

*) Long filenames on WinNT behave different than on win95/98.
    As a result of this, the make distributed with fpc doesn't
    work. Please go to the cywin site an grab the latest copy of
    make and ash (this version make uses sh) Copy make.exe and
    sh.exe to the pp\bin\win32 dir

      http://sourceware.cygnus.com/cygwin/mirrors.html

      /pub/cygwin/latest/ash
      /pub/cygwin/latest/make

*) You might get some errors on rm.exe so if you are at the
    cygnus site copy rm.exe and mv.exe from fileutils.tar.gz
    to the pp\bin\win32 dir

      http://sourceware.cygnus.com/cygwin/mirrors.html

      /pub/cygwin/latest/fileutils

*) cycling the compiler (Step 5):
    Remove the make.cmd from the compiler dir. It is an OS2
    script, but NT recognizes it as well.

*) cycling the compiler (Step 5):
    If you do a make cycle and the cycle exits with the error:
      ./ppc1.exe: Command not found
    try to cycle with a basedir set like:
      make cycle BASEDIR=your_fpc_source_dir_here\compiler

*) NOTE: If you store your source tree on a Samba share (like I
    do), you might not be able to link lazarus (also other
    binaries).
    Fpc creates a linker input scripts with 8.3 filenames. Samba
    has a different rule to create 8.3 filenames than M$ so this
    might result in names not accepted by the linker (ldw.exe)
    EXAMPLE:
      mylongfilename.ow --> (M$)     MYLONGF~1.OW
                        --> (Samba)  MYLONG~Q#.OW

      MYLONG~Q#.OW is not considered a valid name.


FAQ:
Q: When I cycle the compiler, I get:
     The name specified is not recognized as an
     internal or external command, operable program or batch file.
     >& was unexpected at this time.
A: There is still a make.cmd in the compiler dir. Remove it.

Q: When I cycle the compiler, I get:
     make[3]: ./ppc1.exe: Command not found
A: Try to cycle with a basedir set like:
     make cycle BASEDIR=your_fpc_source_dir_here\compiler

Q: When I try to make Lazarus I get:
     make.exe: *** interfaces: No such file or directory (ENOENT).  Stop.
     make.exe: *** [interfaces_all] Error 2
A: You need to upgrade your make, please read the first remark of
    the WinNT HowTo



I hope this helps to build/use Lazarus in a NT box.

Marc







More information about the Lazarus mailing list