问题标签 [bitcode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1627 浏览

ios - ld: -bundle 和 -bitcode_bundle 不能一起使用

我正在构建llvm/clang 3.7比特码支持(-fembed-bitcode)。部分模块因错误无法链接:

ld:-bundle 和 -bitcode_bundle(Xcode 设置 ENABLE_BITCODE=YES)不能一起使用 clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

完整的错误输出:

链接 CXX 共享模块 ../../lib/BugpointPasses.dylib cd /Volumes/Transcend/dev/src/llvm_37_ios_any_build/tools/bugpoint-passes && /usr/local/Cellar/cmake/2.8.12.2/bin/cmake - E cmake_link_script CMakeFiles/BugpointPasses.dir/link.txt --verbose=1 /usr/bin/c++ -fembed-bitcode -Os -std=c++11 -stdlib=libc++ -arch arm64 -mios-version-min=8.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -Wall -W -Wno-unused-parameter -Wwrite-strings -Wcast-qual -pedantic -Wno-long -long -Wnon-virtual-dtor -O3 -DNDEBUG -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk -bundle -Wl,-headerpad_max_install_names -Wl,-dead_strip -Wl,-exported_symbols_list,/Volumes/Transcend/dev/src/llvm_37_ios_any_build/tools/bugpoint-passes/BugpointPasses.exports -Wl,-flat_namespace -Wl,-undefined -Wl,suppress -o ../../lib/BugpointPasses.dylib CMakeFiles/BugpointPasses .dir/TestPasses.cpp.o -Wl,-rpath,@executable_path/../lib ld: -bundle 和 -bitcode_bundle (Xcode 设置 ENABLE_BITCODE=YES) 不能一起使用 clang: error: linker command failed with exit code 1 (使用 -v 查看调用) make[2]:* [lib/BugpointPasses.dylib] 错误 1 ​​make[1]: * [tools/bugpoint-passes/CMakeFiles/BugpointPasses.dir/all] 错误 2 make: *** [all] 错误 2

似乎-bundle是由 CMake 添加的,因为我无法在 CMakeLists.txt 中找到它,并且-bitcode_bundle由于-fembed-bitcode.

我该如何解决?任何解决方法(fe 关闭 dylibs 构建,因为我不需要它们)?

0 投票
1 回答
424 浏览

xcode - XCode7:启用位码大小的静态库?

我已经arm64为我的 iOS 应用程序所需的 arch重建了一些静态库,并从命令行获得了bitcode支持(标志)。-fembed-bitcode以前没有位码支持,生成的 .a 文件约为 88 Mb,现在约为 230 Mb。我知道使用位码支持构建会在 .o 文件中添加 __bitcode 部分,但为什么它会大 3 倍?我是否需要为armv7两者构建和创建胖库,arm64或者armv7我可以只使用带有位码的新库?

之前:

现在:

0 投票
1 回答
212 浏览

ios - 使用可可触摸框架构建

有什么方法可以在 xcode 中拥有一个框架的两个版本,一个用于模拟器,一个用于生产,并根据我的构建目的在项目中使用一个?我在为需要位码的 tvOS 应用程序(但这也适用于 iOS)制作一个胖框架时遇到问题,所以我认为这样的解决方案是一个解决方案?

0 投票
2 回答
781 浏览

ios - 使用 Xcode7.1 存档时微博 iOS SDK Bitcode 错误

环境

  • Xcode 7.1
  • OS X 10.11.1
  • 以最低目标要求 8.0 归档 iOS

播客文件

pod "微博SDK", :head

错误信息

ld:无法生成位码包,因为“/Users/XX/code/iOS/Pods/WeiboSDK/libWeiboSDK/libWeiboSDK.a(WBSDKNormalWebViewController.o)”是在没有完整位码的情况下构建的。位码的所有目标文件和库必须从 Xcode Archive 或 Install build for architecture armv7 clang 生成:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

构建时可以,但是归档时会失败

0 投票
0 回答
995 浏览

ios - Unity Xcode 构建链接器错误

我们正在尝试在 Xcode 中构建 Unity 游戏,但不断收到此错误:

ld:“/Users/Pero/Documents/GitHub/MyGame/XCodeProject/Pods/GooglePlayGames/gpg-cpp-sdk/ios/gpg.framework/gpg(libgpg.a-armv7-master.o)”不包含位码。您必须在启用位码的情况下重建它(Xcode 设置 ENABLE_BITCODE),从供应商处获取更新的库,或禁用此目标的位码。对于架构 armv7 clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

我们正在使用:

  • 统一 5.1.1f1
  • Xcode 版本 7.1 (7B91b)

我们在 Xcode 项目中包含了这些框架:

  • gpg.framework
  • GooglePlus.framework
  • GoogleOpenSource.framework
  • GoogleMobileAds.framework
  • CoreText.framework
  • AdSupport.framework
  • AudioToolBox.framework
  • AVFoundation.framework
  • CFNetwork.framework
  • CoreGraphics.framework
  • CoreLocation.framework
  • CoreMedia.framework
  • CoreMotion.framework
  • CoreVideo.framework
  • 基础框架
  • iAd.framework
  • MediaPlayer.framework
  • OpenAL.framework
  • OpenGLES.framework
  • QuartzCore.framework
  • SystemConfiguration.framework
  • UIKit.framework
  • StoreKit.framework
  • CoreTelephony.framework

我们还安装了 Cocoapods,这在我们的 Podfile 中:

我们已尝试搜索该问题,但我们找到的解决方案均无效。我们已经尝试启用和禁用位码、仅构建活动架构、设置或删除搜索路径……这里有一些链接:

xcode-5-1-missing-required-architecture-arm64

ios9 中的新警告

影响-xcode-build-options-enable-bitcode-yes-no

更新到 xcode-7 后出错

xcode-7-and-enable-bitcode-yes-setting-does-not-work

apple-llvm-6-0-error-clang-failed-with-exit-code-1

这是我们第一次使用 Xcode。我们已经从 Unity 构建了 Android 版本,没有任何问题。

在 Mac 上从 Unity 创建 Xcode 项目也存在问题(Unity 不断崩溃),因此 Xcode 项目是在 PC 上创建的。

0 投票
2 回答
935 浏览

xcode - libcocos2d tvOS.a(bio_lib.o)' 不包含位码

在为 AppleTV 项目编译 cocos2d-js 时,我收到此错误:

ld: '/Users/pepa/Library/Developer/Xcode/DerivedData/GameXY-gwkkxwmtiilmalhdxfdjgqdfhedy/Build/Products/Debug-appletvos/libcocos2d tvOS.a(bio_lib.o)' 不包含位码。您必须在启用位码的情况下重建它(Xcode 设置 ENABLE_BITCODE)或从供应商处获取架构 arm64 clang 的更新库:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

我相信我只包含了为启用了位码的 AppleTV 目标构建的库。但编译器仍在抱怨。是否提示告诉哪个库错过了括号中的位码?(bio_lib.o)

如果是这样,你知道它属于哪个图书馆吗?我在我的电脑上没有找到它。我正在使用这里的预构建二进制文件:https ://github.com/elvman/cocos2d-x-3rd-party-libs-bin/tree/tvos

0 投票
1 回答
3014 浏览

ios - 如何在 CMake 项目中禁用 XCode BITCODE?

我正在构建一个使用 CMake 生成项目的中型项目。在 XCode 7+ 上,ENABLE_BITCODE 选项默认设置为“是”。我想在我生成的 XCode 项目中将其默认设置为“否”。

我尝试将“-fno-embed-bitcode”和“-fno-embed-bitcode-marker”添加到我的 CMAKE_C_FLAGS 中,但这没有效果。

0 投票
1 回答
526 浏览

xcode7 - 无法让 -fembed-bitcode 工作

我在 Xcode 7.1.1 中遇到的当前错误是:

每个人都说要在其他 C 标志中添加“-fembed-bitcode”。我已经这样做了,但我仍然遇到同样的错误。我不确定是我添加它的方式还是什么。

我目前正在将其添加到 Other C Flags > Release > Any tvOS SDK

关于为什么我仍然收到错误的任何想法?

0 投票
0 回答
92 浏览

ios - 将 iOS 应用程序迁移到 App Thinning 和 Bitcode 的影响?

我正在尝试更新旧应用程序以利用 App Thinning 和 bitcode。

但是,由于现在每个设备都有自己的自定义版本,因此我有两个问题,我无法在网上找到任何信息:

  • 如何更新我的持续集成脚本以生成特定于设备的二进制文件?
  • 拥有多个特定于设备的二进制文件不会增加整体 QA 工作量吗?因为现在您可能仅在某些二进制文件中缺少某些资源,因为您对图像使用了 App Thinning。如果您现在支持两个操作系统,那么您现在需要在 2 个操作系统上测试 5 个二进制文件,这样您就有十个配置需要支持。有没有办法降低这方面的风险?
0 投票
2 回答
1063 浏览

ios - ios zbar 位码已启用

我正在寻找为 armv7、armv7s、arm64 架构启用 BitCode 的“libzbar.a”(zbar 编译库)我尝试下载 zbar xcode 项目并启用 Bitcode 并编译库我还尝试了其他方法,例如在链接: 如何 xcodebuild 启用 Bitcode 的静态库? 没有成功

链接器错误:...ibzbar.a(ZBarCaptureReader.o)' 不包含位码。您必须在启用位码的情况下重建它(Xcode 设置 ENABLE_BITCODE),从供应商处获取更新的库,或禁用此目标的位码。用于架构 arm64