缺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套件项目中肯定有一些错误,不允许将其库导入到另一个项目中,或者我不知道该怎么做。