Ubuntu Gutsy cross compile to win32 lazarus / 1-Linux ---------------------------------------------------------------------- billstei · 2007-10-08 16:41 I've been testing Lazarus under Ubuntu Gutsy (Beta) and here are a couple of issues that I found/solved: I installed the package fpc-crosswin32 from the Gutsy repos and the following scenario fails: cd /usr/lib/lazarus sudo make clean all OS_TARGET=win32 It fails because it wants i386-win32-as and i386-win32-ld, but these are named fpc-i386-win32-as and fpc-i386-win32-ld from the above mentioned fpc-crosswin32 package.  So, to fix this: cd /usr/bin sudo ln -s fpc-i386-win32-as i386-win32-as sudo ln -s fpc-i386-win32-ld i386-win32-ld Then everything compiles/links ok. Another test was this: cd /usr/lib/lazarus sudo make clean all FULL_TARGET=i386-win32 Which fails in a number of ways, apparently not using the i386-win32 var, but instead using i386-linux, and making a mess of everything. On a weirder note, I tried installing Lazarus for Windows under Wine, and then linking to the i386-win32 units folders there to use the pre- compiled units that a Windows user would use by default, and there were several Upper vs Lower Case file name issues (that Windows sloppiness ignores), which I symbolically linked to fix this: //lcl/units/i386-win32/ComCtrls.o --> Comctrls.o //lcl/units/i386-win32/ComCtrls.ppu --> Comctrls.ppu //lcl/units/i386-win32/ExtCtrls.o --> Extctrls.o //lcl/units/i386-win32/ExtCtrls.ppu --> Extctrls.ppu //lcl/units/i386-win32/maps.o --> Maps.o //lcl/units/i386-win32/maps.ppu --> Maps.ppu //lcl/units/i386-win32/win32/win32proc.o --> Win32Proc.o //lcl/units/i386-win32/win32/win32proc.ppu --> Win32Proc.ppu There are probably others, but this was enough to get a blank Form Application project cross compiled.  Not that anyone would want to do it this way, but perhaps some care should be taken to make all naming consistent in Uses sections, etc. Bill