From: Mark H. <mj...@si...> - 2008-06-12 13:23:22
|
Hi all, I've been using mjpeg tools under OSX for some time now. I have recently begun attempting to integrate the tools with Apple Core services. However Xcode wants the mjpeg libraries to be universal or it won't link against them. I have tried the path of forcing Xcode to only produce binaries for my platform, but that has proved fruitless. I did resort to building the Cocoa application using gcc command line and then manually copying the additional resource files into the .app directory. This is not really a satisfactory solution. So now I have begun building mjpeg with universal binaries. I have spent most of this evening getting lib jpeg 6b built with universal shared libraries and have had success. However mjpeg tools have not been so friendly to cross compilation. configure: MJPEG tools 1.9.0 build configuration : configure: configure: - X86 Optimizations: configure: - MMX/3DNow!/SSE enabled : false configure: - arch/cpu compiler flags : -march=pentium3 - mtune=pentium3 configure: - video4linux recording/playback: false configure: - software MJPEG playback : false configure: - Quicktime playback/recording : false configure: - PNG input support : false configure: - AVI MJPEG playback/recording : true (always) configure: - libDV (digital video) support : false configure: - Gtk+ support for glav : false configure: bash-3.2$ make make all-recursive Making all in utils if /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. - I. -I.. -I.. -I../utils -march=pentium3 -mtune=pentium3 -arch ppc - arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp -no- cpp-precomp -D_THREAD_SAFE -Wall -Wunused -MT mjpeg_logging.lo -MD - MP -MF ".deps/mjpeg_logging.Tpo" -c -o mjpeg_logging.lo mjpeg_logging.c; \ then mv -f ".deps/mjpeg_logging.Tpo" ".deps/mjpeg_logging.Plo"; else rm -f ".deps/mjpeg_logging.Tpo"; exit 1; fi gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../utils -march=pentium3 - mtune=pentium3 -arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os - pipe -no-cpp-precomp -no-cpp-precomp -D_THREAD_SAFE -Wall -Wunused -MT mjpeg_logging.lo -MD -MP -MF .deps/mjpeg_logging.Tpo -c mjpeg_logging.c -fno-common -DPIC -o .libs/mjpeg_logging.o gcc-4.0: -E, -S, -save-temps and -M options are not allowed with multiple -arch flags make[3]: *** [mjpeg_logging.lo] Error 1 make[2]: *** [all-recursive] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2 As you can see here it has attempted to tune for pentium3 and gcc spits it over command line options... I would like to have universal binaries as I do use a mixture of PPC and Intel macs. I am guessing to build universal binaries is going to require some serious hacking of the build scripts. Can anyone help? Mark |