You will probably have to do each build in a separate build directory then use lipo to stick them together.

Good Luck
_________________________________________________________
Mike Jackson                  mike.jack...@bluequartz.net
BlueQuartz Software                    www.bluequartz.net
Principal Software Engineer                  Dayton, Ohio



On Mar 3, 2009, at 6:12 PM, E. Wing wrote:



On Tue, Mar 3, 2009 at 7:51 AM, Michael Jackson <mike.jack...@bluequartz.net > wrote: Well, basically I am confused. Is ICU bundled with Boost? It has been a Looooong time since I dug into the boost sources.

And, yes, CMake has the CMAKE_OS_X_ARCH variable which you can set to any combination of ppc,ppc64,x86,x86_64 for any where from a "single binary to a quad binary".


ICU is a 3rd party dependency that you have to install yourself. It is not included with Boost or OS X as far as I know. ICU has an autoconf build system.

I tried the generic trick with various permutations of:
export CFLAGS="-arch ppc -arch i386 -arch ppc64 -arch x86_64 - isysroot /Developer/SDKs/MacOSX10.5.sdk"

But the build breaks part way through:




gcc -DU_IO_IMPLEMENTATION -I../common -I../i18n -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.5.sdk -fvisibility=hidden - fno-common -c -dynamic -o ucln_io.o ucln_io.c g++ -dynamiclib -dynamic -arch ppc -arch i386 -isysroot /Developer/ SDKs/MacOSX10.5.sdk -fvisibility=hidden -arch ppc -arch i386 - isysroot /Developer/SDKs/MacOSX10.5.sdk -Wl,-compatibility_version -Wl,40 -Wl,-current_version -Wl,40.0 -install_name libicuio.40.dylib -o ../lib/libicuio.40.0.dylib locbund.o ufile.o ufmt_cmn.o uprintf.o uprntf_p.o uscanf.o uscanf_p.o ustdio.o sprintf.o sscanf.o ustream.o ucln_io.o -L../lib -licuuc -L../lib -L../stubdata -licudata -L../lib -licui18n -lpthread -lm rm -f ../lib/libicuio.40.dylib && ln -s libicuio.40.0.dylib ../lib/ libicuio.40.dylib rm -f ../lib/libicuio.dylib && ln -s libicuio.40.0.dylib ../lib/ libicuio.dylib
make[0]: Making `all' in `extra'
make[1]: Making `all' in `uconv'
cd ../.. \
&& CONFIG_FILES=extra/uconv/pkgdata.inc CONFIG_HEADERS= /bin/ sh ./config.status
config.status: creating extra/uconv/pkgdata.inc
DYLD_LIBRARY_PATH=../../lib:../../stubdata:../../tools/ctestfw: $DYLD_LIBRARY_PATH MAKEFLAGS= ../../bin/pkgdata -p uconvmsg -O pkgdata.inc -m static -s uconvmsg -d uconvmsg -T uconvmsg uconvmsg/ uconvmsg.lst
cat uconvmsg/uconvmsg.lst > uconvmsg/uconvmsg_static.lst
DYLD_LIBRARY_PATH=../../lib:../../stubdata:../../tools/ctestfw: $DYLD_LIBRARY_PATH ../../bin/icupkg -tl -c -s uconvmsg -a uconvmsg/ uconvmsg_static.lst new uconvmsg/uconvmsg.dat DYLD_LIBRARY_PATH=../../lib:../../stubdata:../../tools/ctestfw: $DYLD_LIBRARY_PATH ../../bin/genccode -a gcc-darwin -n uconvmsg -e uconvmsg -d uconvmsg uconvmsg/uconvmsg.dat
generating assembly code for uconvmsg/uconvmsg.dat
gcc -I../../common -I../../common -arch ppc -arch i386 -isysroot / Developer/SDKs/MacOSX10.5.sdk -fno-common -c -o uconvmsg/ uconvmsg_dat.o uconvmsg/uconvmsg_dat.s
rm -rf uconvmsg/uconvmsg_dat.s
/usr/bin/ar r uconvmsg/libuconvmsg.a uconvmsg/uconvmsg_dat.o
ar: uconvmsg/libuconvmsg.a is a fat file (use libtool(1) or lipo(1) and ar(1) on it)
ar: uconvmsg/libuconvmsg.a: Inappropriate file type or format
gnumake[3]: *** [uconvmsg/libuconvmsg.a] Error 1
make[2]: *** [package-resfiles] Error 2
make[1]: *** [all-recursive] Error 2
make: *** [all-recursive] Error 2



I see the message about "generating assembly code" which suggests to me that I need some different tricks.


Thanks,
Eric

_______________________________________________
Boost-cmake mailing list
Boost-cmake@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-cmake

_______________________________________________
Boost-cmake mailing list
Boost-cmake@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-cmake

Reply via email to