G'day all,
I'm cross compiling from i386-linux to i386-darwin/powerpc-darwin/i386-win32. I can't seem to create smartlinkable libraries for anything other than i386-linux and so all my cross compiled files are suddenly huge by comparison.
I thought I had this working. Everything is compiled with -CX -XX, but I only have .a files in my i386-linux directory, and my -va compile logs from the other architectures all say..
unit STRUTILS can't be smart linked, switching to static linking [7.082] Searching file /opt/cross/lib/fpc/2.2.3/units/powerpc-darwin/rtl/strutils.o... found
I have No idea what I've changed (if anything), so I thought I'd ask if it were possible to even make it work.
I'll include the script I use to create my cross compilers just in case. I can compile for all the platforms with these compilers, and also compile lazarus against them.
I *thought* I had smartlinking working for non-linux, but on closer inspection it appears not to be.
#!/bin/bash
set -e
make distclean
make all install INSTALL_PREFIX=/opt/cross OPT="-gl -XX -CX"
make distclean
FPC=ppc386 make crossall crossinstall CPU_TARGET=i386 OS_TARGET=darwin CROSSBINDIR=/opt/cross/bin BINUTILSPREFIX=i386-darwin- INSTALL_PREFIX=/opt/cross OPT="-gl -XX -CX -Xd -Fl/opt/cross/MacOSX10.4u.sdk/usr/lib"
make distclean
FPC=ppc386 make crossall crossinstall CPU_TARGET=powerpc OS_TARGET=darwin CROSSBINDIR=/opt/cross/bin BINUTILSPREFIX=powerpc-darwin- INSTALL_PREFIX=/opt/cross OPT="-gl -XX -CX -Xd -Fl/opt/cross/MacOSX10.4u.sdk/usr/lib"
make distclean
FPC=ppc386 make crossall crossinstall CPU_TARGET=i386 OS_TARGET=win32 CROSSBINDIR=/opt/cross/bin BINUTILSPREFIX=i386-mingw- INSTALL_PREFIX=/opt/cross OPT="-gl -XX -CX"
Regards,
Brad
