Hi,
I have a problem trying to compile for both GTK2 and GTK1 when using Lazarus from SVN.
I have my SVN Lazarus in ~/svnroot/lazarus
(revision 18956 a.t.m)
bart at simenon:~/svnroot/lazarus> make clean all LCL_PLATFORM=gtk2
This nicely builds Lazarus with GTK2 as the widgetset. Now Lazarus is built for GTK2 (a bit slow on my old machine) and I can compile for GTK2 (default).
However, for tracking bugs I sometimes need to compile for GTK1, but the LCL is built for GTK2. Trying to compile fro GTK1 gives the (expected) error:
<projectname.lpr>(9,6) Fatal: Can't find unit Interfaces used by <projectname>
As suggested (some time ago) by Marc I did
bart at simenon:~/svnroot/lazarus> make lcl LCL_PLATFORM=gtk1 make -C lcl all
make[1]: Entering directory `/home/bart/svnroot/lazarus/lcl' /bin/rm -f units/i386-linux/alllclunits.ppu
/usr/local/bin/ppc386 -gl -Fu. -Funonwin32 -Fuforms -Fuwidgetset -Fu/usr/local/lib/fpc/2.2.2/units/i386-linux/rtl -Fiinclude -FE. -FUunits/i386-linux -di386 alllclunits.pp
Free Pascal Compiler version 2.2.2 [2008/07/29] for i386 Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Linux for i386
Compiling alllclunits.pp
76 lines compiled, 2.3 sec
make -C interfaces all
make[2]: Entering directory `/home/bart/svnroot/lazarus/lcl/interfaces' make[2]: *** Geen regel voor aanmaken doel `gtk1_all', nodig voor `all'. Stop. make[2]: Leaving directory `/home/bart/svnroot/lazarus/lcl/interfaces' make[1]: *** [interfaces] Fout 2
make[1]: Leaving directory `/home/bart/svnroot/lazarus/lcl' make: *** [lcl] Fout 2
And as you can see, this fails.
(*** Geen regel voor aanmaken doel `gtk1_all', nodig voor `all'. Stop. Translated (roughly to English:
No rule for making target 'gtk1_all', needed for 'all'. Stop )
Obviously I'm doing something wrong here.
So my question is:
- how do I set up my Lazarus so that it can still compile/build for GTK2 (deafult) and GTK1?
Bart
