On 11/04/13 23:25, Marco van de Voort wrote:
In our previous episode, patspiper said:
Cross compilation from Ubuntu 32 bit to Win32, WIn64, and Linux 64 works
well with FPC 2.6.0.

With FPC 2.7.1, any cross compilation yields a 'cannot find -lgcc' error.
Linking what file generates that error when crosscompiling to win32 or win64?
Below is the relevant part of the log for Win32 with FPC2.7.1 (fpmake.pp):

make -C packages smart
make[2]: Entering directory `/home/me/Programs/fpc/fpsrc/exported/2.7.1/packages'
make -C fpmkunit bootstrap
make[3]: Entering directory `/home/me/Programs/fpc/fpsrc/exported/2.7.1/packages/fpmkunit'
/bin/mkdir -p units_bs/i386-linux
/home/me/Programs/fpc/fpsrc/exported/2.7.1/compiler/ppc src/fpmkunit.pp -n -Fu/home/me/Programs/fpc/fpsrc/exported/2.7.1/rtl/units/i386-linux -Fu/home/me/Programs/fpc/fpsrc/exported/2.7.1/packages/paszlib -Fu/home/me/Programs/fpc/fpsrc/exported/2.7.1/packages/fcl-process -Fu/home/me/Programs/fpc/fpsrc/exported/2.7.1/packages/hash -FUunits_bs/i386-linux -Fu../paszlib/src -Fu../hash/src -Fi../paszlib/src -Fi../fcl-process/src/unix -Fu../fcl-process/src -Fi../fcl-process/src/linux -Fi../fcl-process/src/dummy -Xd -Xt -gl make[3]: Leaving directory `/home/me/Programs/fpc/fpsrc/exported/2.7.1/packages/fpmkunit' /home/me/Programs/fpc/fpsrc/exported/2.7.1/compiler/ppc fpmake.pp -n -Fu/home/me/Programs/fpc/fpsrc/exported/2.7.1/packages/fpmkunit/units_bs/i386-linux -Fu/home/me/Programs/fpc/fpsrc/exported/2.7.1/rtl/units/i386-linux -Xd -Xt -gl
/usr/bin/ld: warning: link.res contains output sections; did you forget -T?
/home/me/Programs/fpc/fpsrc/exported/2.7.1/rtl/units/i386-linux/cthreads.o: In function `CTHREADS_$$_init': /home/me/Programs/fpc/fpsrc/exported/2.7.1/rtl/linux/../unix/cthreads.pp:1032: warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: cannot find -lgcc
fpmake.pp(33,1) Error: Error while linking
fpmake.pp(33,1) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
make[2]: *** [fpmake] Error 1
make[2]: Leaving directory `/home/me/Programs/fpc/fpsrc/exported/2.7.1/packages'
make[1]: *** [packages_smart] Error 2

Linux 64 with FPC2.6.3 fails while linking fpdoc.pp:
/home/me/Programs/fpc/fpsrc/exported/2.6.3/compiler/ppcrossx64 -Px86_64 -XPx86_64-linux- -Xr -Fl/home/me/Programs/fpc/crossbinutils/lib//x86_64-linux -Ur -Xs -O2 -n -S2h -Fu/home/me/Programs/fpc/fpsrc/exported/2.6.3/rtl/units/x86_64-linux -Fu/home/me/Programs/fpc/fpsrc/exported/2.6.3/packages/fcl-base/units/x86_64-linux -Fu/home/me/Programs/fpc/fpsrc/exported/2.6.3/packages/iconvenc/units/x86_64-linux -Fu/home/me/Programs/fpc/fpsrc/exported/2.6.3/packages/fcl-xml/units/x86_64-linux -Fu/home/me/Programs/fpc/fpsrc/exported/2.6.3/packages/fcl-passrc/units/x86_64-linux -Fu/home/me/Programs/fpc/fpsrc/exported/2.6.3/packages/chm/units/x86_64-linux -FD/home/me/Programs/fpc/crossbinutils/bin -FE. -FUunits/x86_64-linux -Cg -Flinclude -Fl/etc/ld.so.conf.d/*.conf -Xd -Xt -gl -dx86_64 -dRELEASE fpdoc.pp /home/me/Programs/fpc/crossbinutils/bin/x86_64-linux-ld: warning: ./link.res contains output sections; did you forget -T?
/home/me/Programs/fpc/crossbinutils/bin/x86_64-linux-ld: cannot find -lgcc
/home/me/Programs/fpc/crossbinutils/bin/x86_64-linux-ld: cannot find -lc

Stephano
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to