缺less所需的体系结构x86_64在… libMumbleKit.a(3个切片)

我试图把MumbleKit作为一个库,而不是每次按照这个论坛的成员的build议来编译它。 然而,当我尝试在模拟器上编译时,我得到:

缺less所需的体系结构x86_64在… libMumbleKit.a(3个切片)

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

arm64 armv7 armv7s armv7k arm7s x86_64 i386

尽pipe如此,当我执行时:

lipo -info libMumbleKit.a

我得到:

胖文件中的体系结构:libMumbleKit.a是:armv7 armv7s arm64

以及将构build主动架构configuration为NO。 我使用通用iOS设备和iOS 9物理设备为MumbleKit生成了库。

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

ld:无法生成bitcode包,因为'/ Users / fbartolom / Documents / cocoa applications / inArrivoHD / MumbleKit / libMumbleKit.a(CryptState.o)'没有完整的位码。 所有的比特码文件和库都必须从Xcode Archive或Install build for armv7生成

同样在用相应的方式生成库之后使用我的物理设备:

ld:无法生成bitcode包,因为'/ Users / fbartolom / Documents / cocoa applications / inArrivoHD / MumbleKit / libMumbleKit.a(CryptState.o)'没有完整的位码。 所有用于比特码的目标文件和库都必须从Xcode Archive或安装build for arm64生成

最后,我的iOS 9 iPhone 6S的安装进行得很好,只是在警告中的内容相同:

ld:无法生成bitcode包,因为'/ Users / fbartolom / Documents / cocoa applications / inArrivoHD / MumbleKit / libMumbleKit.a(CryptState.o)'没有完整的位码。 所有用于比特码的目标文件和库都必须从Xcode Archive或安装build for arm64生成

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

检查它与lipo工具的体系结构。 打开terminal,导航到您的图书馆所在的文件夹,并执行:

lipo -info yourlib.a

如果你没有x86_64,比你应该find/编译将有它的lib。

x86_64是模拟器的架构,而不是通用的iOS设备。

我将这个build议应用于:

Xcode 7'CrashReporter不包含位码'链接器错误

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

ld:无法生成位码包,因为'/ Users / fbartolom / Documents / cocoa applications / inArrivoHD / MumbleKit / libMumbleKit.a(bands.o)'没有完整的位码。 所有用于比特码的目标文件和库都必须从Xcode Archive或安装build for arm64生成

什么可能仍然失踪?

我中止了这一尝试。 在原始的mumble套件项目中肯定有一些错误,不允许将其库导入到另一个项目中,或者我不知道该怎么做。