在...libMumbleKit.a 中缺少必需的架构 x86_64(3 个切片)

missing required architecture x86_64 in ...libMumbleKit.a (3 slices)

我正在尝试将 MumbleKit 作为一个库包括在内,而不是每次都按照该论坛成员的建议进行编译。然而,当我尝试在模拟器上编译时,我得到:

missing required architecture x86_64 in …libMumbleKit.a (3 slices)

我想我在生成库之前向 MumbleKit 添加了所有必要的版本:

arm64 armv7 armv7s armv7k arm7s x86_64 i386

尽管如此,当我执行时:

lipo -info libMumbleKit.a

我得到:

Architectures in the fat file: libMumbleKit.a are: armv7 armv7s arm64

以及将 Build Active Architecture 配置为 NO。 我使用通用 iOS 设备和 iOS 9 物理设备为 MumbleKit 生成了库。

当我在以相同方式提取 Mumble 库后尝试使用通用 iOS 设备选项进行存档时,我却收到错误消息:

ld: bitcode bundle could not be generated because '/Users/fbartolom/Documents/cocoa applications/inArrivoHD/MumbleKit/libMumbleKit.a(CryptState.o)' was built without full bitcode. All object files and libraries for bitcode must be generated from Xcode Archive or Install build for architecture armv7

在以相应方式生成库后使用我的物理设备时也是如此:

ld: bitcode bundle could not be generated because '/Users/fbartolom/Documents/cocoa applications/inArrivoHD/MumbleKit/libMumbleKit.a(CryptState.o)' was built without full bitcode. All object files and libraries for bitcode must be generated from Xcode Archive or Install build for architecture arm64

最后在我的 iOS 9 iPhone 6S 上安装正常,警告中的内容相同:

ld: bitcode bundle could not be generated because '/Users/fbartolom/Documents/cocoa applications/inArrivoHD/MumbleKit/libMumbleKit.a(CryptState.o)' was built without full bitcode. All object files and libraries for bitcode must be generated from Xcode Archive or Install build for architecture arm64

CryptState.cpp 如果库中有 c++ 文件。

使用 lipo 工具检查其架构。打开终端,导航到您的库所在的文件夹并执行:

lipo -info yourlib.a

如果您没有 x86_64,那么您应该 find/compile 将拥有它的库。

x86_64 是模拟器的体系结构,不适用于通用 iOS 设备。

我在以下位置采纳了建议:

通过将选项 -fembed-bitcode 添加到其他链接器标志字段。现在问题已经转移到 c 文件:band.c,当然我已经为 c 和 c++ 文件添加了这个选项。

ld: bitcode bundle could not be generated because '/Users/fbartolom/Documents/cocoa applications/inArrivoHD/MumbleKit/libMumbleKit.a(bands.o)' was built without full bitcode. All object files and libraries for bitcode must be generated from Xcode Archive or Install build for architecture arm64

可能还缺少什么?

我中止了这次尝试。一定是原来的 mumble kit 项目有什么问题,不允许将它的库导入到另一个项目中,或者我不知道该怎么做。