0

I have a cocoa pods as a dependency manager for libraries used in my app. And I have an Apple Watch support - so after installing Xcode 7 beta 3 I received an error during compilation:

ld: '/Users/**************/********/**************/Pods/FlurrySDK/Flurry/libFlurry_6.6.0.a(libFlurry.a-armv7-master.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

In my extension target I didn't find option to set ENABLE_BITCODE = NO.

As I understand, For Apple Watch I have to provide all the libraries build with bitcode option.

I tried to add pods only for main main app target to prevent linking of libraries with the app extension, but anyway I still get this linking error.

How can I build my app in the latest Xcode beta?

user102008
  • 30,736
  • 10
  • 83
  • 104
ShurupuS
  • 2,923
  • 2
  • 24
  • 44

3 Answers3

2

As seen in this question, you have to enable bitcode, or simply disable it. Xcode tells you, that you can simply disable bitcode for this target.

EDIT:

After the comment from the author, I have to say that there isn't a thing you can do, besides of to wait for the new Flurry SDK to be released, as the new version should support Bitcode. Bitcode is a powerful technology, so just turn it back on and possibly email the developer.

Hope that helps, Julian

Community
  • 1
  • 1
Julian E.
  • 4,687
  • 6
  • 32
  • 49
  • Unfortunately, this doesn't help( – ShurupuS Jul 15 '15 at 18:10
  • returned xcode 7 beta 1 - there I got this = > ld: warning: URGENT: all bitcode will be dropped because '/Users/***/Pods/FlurrySDK/Flurry/libFlurry_6.6.0.a(libCrashReporter-iphoneos.a-armv7-master.o)' was built without bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. Note: This will be an error in the future. – ShurupuS Jul 15 '15 at 19:00
  • oh, well... Then you can't do anything about it I believe. You must wait for the new Flury to be released – Julian E. Jul 15 '15 at 21:00
  • Absolutely no problem! Glad I could help! – Julian E. Jul 16 '15 at 10:04
2

Xcode Settings

The quick-fix is to turn off Bitcode in your Xcode settings. See the attached image for the exact location under your Target App's Build Settings.

Frak
  • 832
  • 1
  • 11
  • 32
  • Nope. Bitcode is required for watchOS. Apple docs: _Note: For iOS apps, bitcode is the default, but optional. If you provide bitcode, all apps and frameworks in the app bundle need to include bitcode. For watchOS apps, bitcode is required._ [Apple Docs](https://developer.apple.com/library/watchos/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html) – Ralf Hundewadt Oct 16 '15 at 08:26
-1

You library was compiled without bitcode but the bitcode option is enabled in your project settings. Say NO to Enable Bitcode in your target Build Settings and the Library Build Settings to remove the warnings.

Please check this article. I think it is helpful for you. New warnings in iOS 9

Community
  • 1
  • 1
Mark
  • 271
  • 1
  • 9