可执行文件包含不完整的bitcode错误。要使用完整的bitcode编译二进制文件,请打开Xcode并在产品菜单中选择存档

时间:2017-04-29 07:46:03

标签: ios bitcode

我尝试在项目文件的构建设置和所有第三方库中禁用bitcode。 对于图书馆我遇到错误"您的应用程序不能包含独立的可执行文件或库,而不是CFBundleExecutable或支持的软件包。"

1 个答案:

答案 0 :(得分:0)

我在项目中面临同样的问题。我已通过以下两种解决方案解决了这个问题(解决方案1和解决方案2)。

解决方案1 ​​

您可以通过在结束标记之前的iOS应用项目的.csproj文件中添加以下行来禁用bitcode。

<Target Name="BeforeCodesign">
  <Exec Command="$(_SdkDevPath)\Toolchains\XcodeDefault.xctoolchain\usr\bin\bitcode_strip %(_Frameworks.FullPath) -r -o %(_Frameworks.FullPath)" />
</Target>


解决方案2

在iOS应用程序的.csproj(或本机框架应用程序,如果您在本机框架项目中遇到此问题)中,搜索PropertyGroup以获取关闭位代码所需的发行版配置,如下所示: / p>

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">

在该组中,查看是否已存在MtouchEnableBitcode并对其进行编辑,否则添加以下行:

<MtouchEnableBitcode>false</MtouchEnableBitcode>


解决方案3

使用Xcode 9和最新版本的Xamarin.iOS构建应用程序。

<强>原因:
无效的捆绑包 - 无法处理应用程序,因为在提交中检测到不允许嵌入bitcode的选项。您可能没有使用Xcode中提供的工具链构建应用程序。更多细节click here