为 iOS 编译 XZ 实用程序

Compiling XZ Utils for iOS

我正在尝试为 iOS 编译 XZ Utils。

我怎么样运行 ./configure:

CC="clang -arch armv7 -arch armv7s -arch arm64 \
-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.2.sdk" \
./configure --disable-dependency-tracking \
--host=arm-apple-darwin15.0.0 --build=x86_64-apple-darwin15.3.0

如果我只指定一种体系结构,它编译得很好。

configure:6216: clang -arch armv7 -arch armv7s -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.2.sdk -E  conftest.c
clang: error: cannot use 'cpp-output' output with multiple -arch options

我想要编译包含 armv7、armv7s 和 arm64 片的胖二进制文件。有什么办法可以绕过 clang 的这个限制吗?

您只能使用一种架构作为目标,您必须使用lipo 来创建 fat 库。

举个例子:

lipo -create -output fat.a thin1.a thin2.a