Macos 如何在Mac OSX 10.4中以通用二进制文件编译LibJpeg

Macos 如何在Mac OSX 10.4中以通用二进制文件编译LibJpeg,macos,universal-binary,libjpeg,Macos,Universal Binary,Libjpeg,我想用通用二进制(ppc,i386)编译jpeg-8b。它应该在10.4及更高版本的OSs中得到支持 我可以在10.5和10.6中实现,但二进制文件与10.4不兼容 所以我试着在10.4中编译它,但失败了 这就是我正在做的 cd jpeg-8b sudo ./configure CC="gcc -arch i386 -arch ppc" CXX="g++ -arch i386 -arch ppc" CPP="gcc -E" CXXCPP="g++ -E" -enable-static=yes

我想用通用二进制(ppc,i386)编译jpeg-8b。它应该在10.4及更高版本的OSs中得到支持

我可以在10.5和10.6中实现,但二进制文件与10.4不兼容

所以我试着在10.4中编译它,但失败了

这就是我正在做的

cd jpeg-8b

sudo ./configure CC="gcc -arch i386  -arch ppc" CXX="g++ -arch i386 -arch ppc" CPP="gcc -E" CXXCPP="g++ -E" -enable-static=yes -enable-shared=no
它失败,错误为“配置:错误:C编译器无法创建可执行文件”

如果我能得到10.4兼容的通用二进制文件,那将非常有用

问候,,
Dhana

在安装了10.4 SDK的情况下,您能否尝试在10.5/10.6上编译它 并使用:

export MACOSX_DEPLOYMENT_TARGET="10.4" export OSX_SDK="/Developer/SDKs/MacOSX10.4.sdk" export OSX_CFLAGS="-isysroot $OSX_SDK -arch ppc -arch i386" export OSX_LDFLAGS="-Wl,-syslibroot,$OSX_SDK -arch ppc -arch i386" export CFLAGS="$CFLAGS $OSX_CFLAGS" export CXXFLAGS="$CXXFLAGS $OSX_CFLAGS" export LDFLAGS="$LDFLAGS $OSX_LDFLAGS" export ARCHFLAGS="-arch ppc -arch i386" 导出MACOSX\u部署\u TARGET=“10.4” 导出OSX_SDK=“/Developer/SDKs/MacOSX10.4.SDK” export OSX_CFLAGS=“-isysroot$OSX_SDK-arch ppc-arch i386” export OSX_LDFLAGS=“-Wl,-syslibroot,$OSX_SDK-arch ppc-arch i386” export CFLAGS=“$CFLAGS$OSX\u CFLAGS” 导出CXXFLAGS=“$CXXFLAGS$OSX\U CFLAGS” export LDFLAGS=“$LDFLAGS$OSX\u LDFLAGS” export ARCHFLAGS=“-arch-ppc-arch i386”
然后尝试添加--disable dependency tracking to./configure

我是否必须将GCC设置为4.0,因为只有10.5及以上版本支持GCC 4.2我不这么认为,您正在10.5/10.6上运行它,并且只编译10.4。但是如果4.2失败了,你可以尝试4.0。