Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ITMS-90668 - Invalid Bundle Executable. The executable file contains incomplete bitcode

Yesterday I started to get strange error message from iTunes Connect:

ITMS-90668
Invalid Bundle Executable.
The executable file '...' contains incomplete bitcode.
To compile binaries with complete bitcode, open Xcode and choose Archive in the Product menu.

Actually, I am getting many identical messages for each of my embedded frameworks.

I do use Bitcode, and I have not changed anything related Bitcode in my project. It seems like a new ITMS requirement (or bug). And I have no idea how to fix it.

Looks like this problem mysteriously related to CI tools like Shenzhen or BuddyBuild. Or, maybe, it is related to cases when dependencies contain precompiled code.

Just in case, my app:

  • Has these dependencies which have precompiled code: BuddyBuildSDK, Firebase, CardIO.
  • Written in Swift.
  • Has iOS Keyboard Extension.
  • Use BuddyBuild.
  • Use CocoaPods.

Update:

I had changed virtually nothing and then the problem did disappear yesterday. I have no idea why exactly. I believe Apple just fixed that bug or it is fluke problem.

like image 686
Valentin Shergin Avatar asked May 27 '16 22:05

Valentin Shergin


1 Answers

I had the same problem with some pod dependencies. I changed "Enable Bitcode" build setting for each pod projects causing the issue (following the error descriptions from itunesconnect). Now everything works.

You can set it in the Podfile. Here an example that changes for each dependencies:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['ENABLE_BITCODE'] = 'NO'
    end
  end
end

Found here: Disable bitcode for project and cocoapods dependencies with Xcode7?

like image 196
Julien Avatar answered Sep 18 '22 03:09

Julien