Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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

I want to deploy iOS application for iOS version 5.1.1 and above with xcode 7.

But when I tried to run my iOS application project in Xcode 7 beta 4 then it shows error message “-fembed-bitcode is not supported on versions of iOS prior to 6.0”

And for this error I found following predictions on googling, "Xcode 7 has a ENABLE_BITCODE option to embed bitcode in apps, app extensions, and frameworks. The option is turned on by default for iOS and is mandatory for watchOS projects submitted to the store. When bitcode is enabled for a target, all the objects, static libraries and user frameworks used when linking that target must contain bitcode. Otherwise, an error or a warning will be issued by the linker. (Note: missing bitcode is currently a warning for iOS, but it will become an error in an upcoming beta release of Xcode 7.) ENABLE_BITCODE should be consistently turned on for all the targets. If you use a library or framework provided by a third party, please contact the vendor for an updated version which contains bitcode."

Then tried to set ENABLE_BITCODE = NO in Xcode 7 beta 4 But I can’t find this option in Xcode 7 beta 4 under Build Settings of Project and Target of my iOS application project.

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

Thanks in Advance.

like image 839
JKMania Avatar asked Aug 04 '15 12:08

JKMania


People also ask

Where is enable Bitcode in XCode?

When building an application with XCode, we have an option to set the Enable Bitcode flag to either YES or NO via Build Settings > Build Options.

Should I enable Bitcode iOS?

Since the bitcode doesn't leave Apple's servers, enabling bitcode doesn't have any security implications at all (unless you consider Apple itself as an adversary in your threat model). iXGuard, our security solution for iOS applications and SDKs, requires a bitcode-enabled build.

What is Bitcode in XCode?

Replies. Bitcode is an intermediate representation of a compiled program. Meaning you can slice/segment it out for different processors, etc. once it's in the store, reducing the payload do the user accordingly.

What is Bitcode enabled app?

Enable bitcode Bitcode is an Apple technology that enables you to recompile your app to reduce its size. The recompilation happens when you upload your app to App Store Connect or export it for Ad Hoc, Development, or Enterprise distribution.


2 Answers

This answer is a bit late, but for those who hitting this page for the first time. When you click on Build Settings make sure you also select All tab and then search for bitcode.

By default, Basic tab is selected and you wouldn't be able to find Enable Bitcode in the Build Options. Said that, if you have changed bitcode setting in the past it will show up under Basic tab too. As you can see from Mark Szymczyk post above, All tab is selected.

like image 88
pilot Avatar answered Sep 28 '22 02:09

pilot


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.

like image 42
Chetan Mahajan Avatar answered Sep 28 '22 01:09

Chetan Mahajan