How to Enable_Bitcode in Xcode 7

How to ENABLE_BITCODE in Xcode 7?

If you are using a third-party framework or library that was updated for iOS 9, and you don't want to include bitcode, then you should check to see if a version of the framework was provided without bitcode. See Apple's note on when to include it in your app bundle:

For iOS apps, bitcode is the default, but optional. For watchOS and tvOS apps, bitcode is required. If you provide bitcode, all apps and frameworks in the app bundle (all targets in the project) need to include bitcode.

To disable/enable bitcode in your project, follow these steps:

  1. In the project build settings, make sure you have enabled All settings to be visible.
  2. The Build Options are the 4th section down. Select Yes or No for the Enable Bitcode option.

Sample Image

Sample Image

What does ENABLE_BITCODE do in xcode 7?

Bitcode refers to to the type of code: "LLVM Bitcode" that is sent to iTunes Connect. This allows Apple to use certain calculations to re-optimize apps further (e.g: possibly downsize executable sizes). If Apple needs to alter your executable then they can do this without a new build being uploaded.

This differs from:
Slicing which is the process of Apple optimizing your app for a user's device based on the device's resolution and architecture. Slicing does not require Bitcode. (Ex: only including @2x images on a 5s)

App Thinning is the combination of slicing, bitcode, and on-demand resources

Bitcode is an intermediate representation of a compiled program. Apps
you upload to iTunes Connect that contain bitcode will be compiled and
linked on the App Store. Including bitcode will allow Apple to
re-optimize your app binary in the future without the need to submit a
new version of your app to the store.

Apple Documentation on App Thinning

I would like to know how to get option ENABLE Bitcode in XCODE 7 beta 4?

To Show Option ENABLE_BITCODE Option in Xcode 7 Use following steps,

1) Right Click On “YourProjectName.xcodeproj” file and Select “Show Package Contents” option.

2) Open “project.pbxproj” TextEdit application and add ENABLE_BITCODE = NO; in two places in project.pbxproj file as shown below,

1D6058950D05DD3E006BFB54 /* Release / = {/ Build configuration list for PBXNativeTarget "::APP_TITLE::" */
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
ENABLE_BITCODE = NO;

1D6058940D05DD3E006BFB54 /* Debug / = {/ Build configuration list for PBXNativeTarget "::APP_TITLE::" */
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
ENABLE_BITCODE = NO;

3) Save above changes in “project.pbxproj” file.

4) Open your project in Xcode 7 then you will see the option ENABLE_BITCODE under Targets => BuildSettings.

5) Set ENABLE_BITCODE = NO to Debug, Release, Distribution.

6) Build and Run your project on your device.

dont run app with open-cv in xcode 7?

In the build settings for your App Target, search for "Bitcode" and set Bitcode Enabled to NO.


Although I recommend you get the framework vendor to supply a Bitcode enabled version

Xcode 7 ENABLE_BITCODE error is already YES, but still get's error

Credit to – @trojanfoe Mar 30 at 10:47

"It's got nothing to do with setting bitcode to YES; the issue is that you've set it to YES but that library (libChartboost.a) doesn't support it. The other error is completely unrelated."



Related Topics



Leave a reply



Submit