Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

eas build -p ios | Fastlane build failed with unknown error #1079

Closed
luca-betcha opened this issue Apr 21, 2022 · 26 comments
Closed

eas build -p ios | Fastlane build failed with unknown error #1079

luca-betcha opened this issue Apr 21, 2022 · 26 comments
Labels
needs review Issue is ready to be reviewed by a maintainer

Comments

@luca-betcha
Copy link

Build/Submit details page URL

No response

Summary

I was able to properly create .ipa until last week, but now I get this error in FastLane during linking:

❌  ld: could not reparse object file in bitcode bundle: 'Invalid bitcode version (Producer: '1316.0.21.2.3_0' Reader: '1300.0.29.30_0')', using libLTO version 'LLVM version 13.0.0, (clang-1300.0.29.30)' for architecture arm64


❌  clang: error: linker command failed with exit code 1 (use -v to see invocation)

I tried to compile it with image="latest" with no luck.
Android build is working properly.

I also tried to archive the project locally with XCode13.3 after "expo prebuild --clean -p ios" and it worked.

Managed or bare?

Managed

Environment

expo-env-info 1.0.2 environment info:
System:
OS: macOS 12.2.1
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 16.13.1 - ~/.nvm/versions/node/v16.13.1/bin/node
Yarn: 1.22.4 - /usr/local/bin/yarn
npm: 8.1.2 - ~/.nvm/versions/node/v16.13.1/bin/npm
Watchman: 2021.11.15.00 - /usr/local/bin/watchman
Managers:
CocoaPods: 1.11.2 - /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 21.4, iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5
IDEs:
Android Studio: 2021.1 AI-211.7628.21.2111.8309675
Xcode: 13.3/13E113 - /usr/bin/xcodebuild
npmPackages:
babel-preset-expo: 9.0.2 => 9.0.2
expo: ^44.0.6 => 44.0.6
react: 17.0.1 => 17.0.1
react-dom: 17.0.1 => 17.0.1
react-native: 0.64.3 => 0.64.3
react-native-web: 0.17.1 => 0.17.1
npmGlobalPackages:
eas-cli: 0.51.0
expo-cli: 5.3.2
Expo Workflow: bare

Error output

No response

Reproducible demo or steps to reproduce from a blank project

This is my eas.json:

{
  "cli": {
    "version": ">= 0.47.0"
  },
  "build": {
    "development": {
      "developmentClient": true,
      "distribution": "internal"
    },
    "preview": {
      "distribution": "internal"
    },
    "production-ios": {
      "ios": {
        "image": "latest"
      },
      "distribution": "store",
      "releaseChannel": "production.ios-1.7.1"
    }
  },
  "submit": {
    "production": {}
  }
}

I queued the build with:

eas build -p ios --profile production-ios
@luca-betcha luca-betcha added the needs review Issue is ready to be reviewed by a maintainer label Apr 21, 2022
@hunterunger
Copy link

Same issue here with same troubleshooting. It was working not long ago for me too. I assume it's Expo's build servers then?

@wkozyra95
Copy link
Contributor

You are depending on some third-party library that provides prebuild binaries build on a newer version xcode than expo servers have. The only option is to downgrade those libraries.

closing issue for now
it should not happen, but if the issue is caused by an expo package please reopen this issue

@wkozyra95
Copy link
Contributor

It looks like we will need new code for next SDK, so we will probably update latest image next week

@luca-betcha
Copy link
Author

luca-betcha commented Apr 22, 2022 via email

@Hadajung
Copy link

For anyone to not to go trouble going through all third-party library, I raised the macos image on azure pipeline to macos-12 and it was solved.

@wkozyra95
Copy link
Contributor

the latest image is now using xcode13.3

@frankbret
Copy link

I'm a beginner and tried to compile the HelloWorld demo sample but no success to publish to apple store.
Expo says :
🍎 iOS build failed:
Fastlane build failed with unknown error. Please refer to the "Run fastlane" and "Xcode Logs" phases.
Fastlane errors in most cases are not printed at the end of the output, so you may not find any useful information in the last lines of output when looking for an error message.

And the ios Xcode log (lasts lines because its 10k lines !! Not succees to find which library was in cause) :

Ld /Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/InstallationBuildProductsLocation/Applications/allomonde.app/allomonde normal (in target 'allomonde' from project 'allomonde')
    cd /Users/expo/workingdir/build/ios
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -target arm64-apple-ios12.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS15.0.sdk -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/DoubleConversion -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/EXApplication -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/EXConstants -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/EXErrorRecovery -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/EXFont -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/Expo -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/ExpoKeepAwake -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/ExpoModulesCore -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/RCT-Folly -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/RCTTypeSafety -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-Codegen -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-Core -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-CoreModules -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-RCTAnimation -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-RCTBlob -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-RCTImage -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-RCTLinking -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-RCTNetwork -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-RCTSettings -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-RCTText -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-RCTVibration -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-cxxreact -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-jsi -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-jsiexecutor -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-jsinspector -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-logger -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/React-perflogger -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/ReactCommon -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/Yoga -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/fmt -L/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/glog -F/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos -F/Users/expo/workingdir/build/ios/Pods/../../node_modules/expo-file-system/ios -F/Users/expo/workingdir/build/ios/Pods/../../node_modules/expo-splash-screen/ios -F/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/XCFrameworkIntermediates/EXFileSystem -F/Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos/XCFrameworkIntermediates/EXSplashScreen -filelist /Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/IntermediateBuildFilesPath/allomonde.build/Release-iphoneos/allomonde.build/Objects-normal/arm64/allomonde.LinkFileList -Xlinker -rpath -Xlinker /usr/lib/swift -Xlinker -rpath -Xlinker /usr/lib/swift -Xlinker -rpath -Xlinker @executable_path/Frameworks -dead_strip -Xlinker -object_path_lto -Xlinker /Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/IntermediateBuildFilesPath/allomonde.build/Release-iphoneos/allomonde.build/Objects-normal/arm64/allomonde_lto.o -fembed-bitcode -Xlinker -bitcode_verify -Xlinker -bitcode_hide_symbols -Xlinker -bitcode_symbol_map -Xlinker /Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/BuildProductsPath/Release-iphoneos -Xlinker -final_output -Xlinker /Applications/allomonde.app/allomonde -stdlib\=libc++ -fobjc-arc -fobjc-link-runtime -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos -L/usr/lib/swift -Xlinker -add_ast_path -Xlinker /Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/IntermediateBuildFilesPath/allomonde.build/Release-iphoneos/allomonde.build/Objects-normal/arm64/allomonde.swiftmodule -ObjC -lDoubleConversion -lEXApplication -lEXConstants -lEXErrorRecovery -lEXFont -lExpo -lExpoKeepAwake -lExpoModulesCore -lRCT-Folly -lRCTTypeSafety -lReact-Codegen -lReact-Core -lReact-CoreModules -lReact-RCTAnimation -lReact-RCTBlob -lReact-RCTImage -lReact-RCTLinking -lReact-RCTNetwork -lReact-RCTSettings -lReact-RCTText -lReact-RCTVibration -lReact-cxxreact -lReact-jsi -lReact-jsiexecutor -lReact-jsinspector -lReact-logger -lReact-perflogger -lReactCommon -lYoga -lc++ -lc++abi -lfmt -lglog -framework AudioToolbox -framework EXFileSystem -framework EXSplashScreen -framework JavaScriptCore -framework MobileCoreServices -ObjC -lc++ -lPods-allomonde -Xlinker -no_adhoc_codesign -Xlinker -dependency_info -Xlinker /Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/IntermediateBuildFilesPath/allomonde.build/Release-iphoneos/allomonde.build/Objects-normal/arm64/allomonde_dependency_info.dat -o /Users/expo/Library/Developer/Xcode/DerivedData/allomonde-cxhqiciqscpymuclrzeeapjqoodr/Build/Intermediates.noindex/ArchiveIntermediates/allomonde/InstallationBuildProductsLocation/Applications/allomonde.app/allomonde
ld: could not reparse object file in bitcode bundle: 'Invalid bitcode version (Producer: '1316.0.21.2.3_0' Reader: '1300.0.29.3_0')', using libLTO version 'LLVM version 13.0.0, (clang-1300.0.29.3)' for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

and package.json :

{
  "name": "allo-monde",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "start": "expo start --dev-client",
    "android": "expo run:android",
    "ios": "expo run:ios",
    "web": "expo start --web"
  },
  "dependencies": {
    "expo": "~45.0.0",
    "expo-splash-screen": "~0.15.1",
    "expo-status-bar": "~1.3.0",
    "react": "17.0.2",
    "react-dom": "17.0.2",
    "react-native": "0.68.1",
    "react-native-web": "0.17.7",
    "webpack-dev-server": "~3.11.0",
    "@expo/webpack-config": "~0.16.2"
  },
  "devDependencies": {
    "@babel/core": "^7.12.9"
  },
  "private": true,
  "start": "react-scripts --openssl-legacy-provider start"
}

and eas.json :

{
  "cli": {
    "version": ">= 0.52.0"
  },
  "build": {
    "development": {
      "distribution": "internal",
      "android": {
        "gradleCommand": ":app:assembleDebug"
      },
      "ios": {
        "buildConfiguration": "Debug"
      }
    },
    "preview": {
      "distribution": "internal"
    },
    "production": {}
  },
  "submit": {
    "production": {}
  }
}

@Hadajung
Copy link

Hadajung commented May 9, 2022

@frankbret are you building locally ? then what is your xcode version ?

@frankbret
Copy link

No, not locally, I don't have a mac and this is why I tried this ReactNative/Expo/Eas thing.
I run :

npm install -g eas-cli
eas login
eas build:configure

I waited and after minutes the console said:
🍎 iOS build - status: waiting to enter the queue (concurrency limit reached)

Glad to know there is a local way to compile if I buy a mac.
Thank for you supoport !

@frankbret
Copy link

frankbret commented May 11, 2022

Answered myself, with a little help from this thread somehow related.
So you just have to add "image": "latest" to the "ios" element in eas.json in the right profile.
ex. :

{
  "cli": {
    "version": ">= 0.52.0"
  },
  "build": {
    "development": {
      "developmentClient": true,
      "distribution": "internal",
      "android": {
        "gradleCommand": ":app:assembleDebug"
      },
      "ios": {
        "buildConfiguration": "Debug",
		"image": "latest"
      }
    },
    "preview": {
      "distribution": "internal"
    },
    "production": {}
  },
  "submit": {
    "production": {}
  }
}

And build with :
eas build --platform ios --profile development

(just to do the same with "production" profile (probably))

And the reason is here Latest = 13.3 default = 13.0 !!!
So you need to use upper XCode builder version to build libraries builded with higher versions.

creature-water-valley added a commit to ws-4020/mobile-app-crib-notes that referenced this issue Jun 9, 2022
## ✅ What's done
 
- [x] `expo upgrade 45`
  - [Changelog](https://github.com/expo/expo/blob/main/CHANGELOG.md#4500--2022-04-25)
  - Since React Native Elements depends on the react-native-safe-area-context 3.x, only react-native-safe-area-context is left as 3.3.2
- [x] Apply changes of [expo-template-bare-minimum](https://github.com/expo/expo/commits/sdk-45/templates/expo-template-bare-minimum)
- [x] Apply changes of [ReactNativeFlipper.java](https://github.com/facebook/react-native/commits/0.68-stable/template/android/app/src/debug/java/com/helloworld/ReactNativeFlipper.java)
- [x] Add patch for React Native Elements type error 
- [x] Fix lint error(flatten of AnimatedStyle and ViewStyle) 
- [x] Update snapshots 
- [x] Fix autoCompleteType in TextInputProps changed to autoComplete.
- [x] Fix AppState cleanup
- [x] Fix SelectPickerItems test to use useFakeTimers and runAllTimers
- [x] Add option `requireConfirmation` to local authentication demo
- [x] Add eslint-plugin-deprecation to detect deprecated 
- [x] Set "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "" 
- [x] Add ResetEditText to styles.xml
- [x] Bump up macOS  to 12 and Xcode to 13.3.1 on ci to resolve the following errors
  - `❌  ld: could not reparse object file in bitcode bundle: 'Invalid bitcode version (Producer: '1316.0.21.2.3_0' Reader: '1300.0.29.30_0')', using libLTO version 'LLVM version 13.0.0, (clang-1300.0.29.30)' for architecture arm64`
  - Similar ref. expo/eas-cli#1079
- [x] Remove cache pods restorekeys on c
- [x] Remove cleanBuildCache from android cmd in reset-cache
- [x] Bump up tool versions
    | Tool | from | to |
    |-----|-----|----|
    | Node.js | 16.14.2 | 16.15.1 |
    | Ruby | 3.0.3 | 3.1.2 |
@faustoct1
Copy link

How to fix it on BigSur 11.6.7 + Xcode Version 13.2.1 (13C100) ?

@cmonkey03
Copy link

cmonkey03 commented Jul 7, 2022

I'm getting this error as well on Expo's build servers

❌  ld: could not reparse object file in bitcode bundle: 'Invalid bitcode version (Producer: '1316.0.21.2.3_0' Reader: '1300.0.29.3_0')', using libLTO version 'LLVM version 13.0.0, (clang-1300.0.29.3)' for architecture arm64

I copied the eas.json above with a newer cli version

{
  "cli": {
    "version": ">= 0.53.1",
    "requireCommit": true
  },
  "build": {
    "development": {
      "developmentClient": true,
      "distribution": "internal",
      "android": {
        "gradleCommand": ":app:assembleDebug"
      },
      "ios": {
        "buildConfiguration": "Debug",
        "image": "latest"
      }
    },
    "preview": {
      "distribution": "internal"
    },
    "production": {}
  },
  "submit": {
    "production": {}
  }
}

and my package.json is

  "dependencies": {
    "app": "*",
    "expo": "^44.0.0",
    "expo-dev-client": "~0.8.6",
    "expo-linear-gradient": "~11.0.3",
    "expo-splash-screen": "~0.14.1",
    "expo-status-bar": "~1.2.0",
    "react": "17.0.1",
    "react-dom": "17.0.1",
    "react-native": "0.64.3",
    "react-native-gesture-handler": "~2.1.0",
    "react-native-reanimated": "~2.3.1",
    "react-native-safe-area-context": "3.3.2",
    "react-native-screens": "~3.10.1",
    "react-native-web": "0.17.1"
  },
  "devDependencies": {
    "@babel/core": "^7.12.9",
    "@types/react": "~17.0.21",
    "@types/react-native": "~0.64.12",
    "typescript": "~4.3.5"
  },
  "scripts": {
    "start": "expo start --dev-client",
    "android": "expo run:android",
    "ios": "expo run:ios",
    "web": "expo start --web"
  },

The eas build --platform ios --profile development command sort of builds (builds but doesn't run). I'm stumped as I can run the app locally no problem.

@xubmuajkub
Copy link

I'm using Expo Bared Project, facing the same issue

ld: could not reparse object file in bitcode bundle: 'Invalid bitcode version (Producer: '1316.0.21.2.3_0' Reader: '1300.0.29.3_0')', using libLTO version 'LLVM version 13.0.0, (clang-1300.0.29.3)' for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

@endruuu
Copy link

endruuu commented Sep 2, 2022

@xubmuajkub me, too.

Using Expo 46, ejected app, MacBook M1, Xcode

@PingvinB
Copy link

Same issue here. Using expo sdk 46 and running eas build with --local flag on Azure pipeline using 'macos-latest' image.
could not reparse object file in bitcode bundle: 'Invalid bitcode version (Producer: '1316.0.21.2.5_0' Reader: '1300.0.29.30_0')', using libLTO version 'LLVM version 13.0.0, (clang-1300.0.29.30)' for architecture arm64

+-------------+--------------------------------+
|              Build environment               |
+-------------+--------------------------------+
| xcode_path  | /Applications/Xcode_13.2.1.app |
| gym_version | 2.209.1                        |
| sdk         | iPhoneOS15.2.sdk               |
+-------------+--------------------------------+

@wkozyra95
Copy link
Contributor

@PingvinB That means that the Xcode version is too old.

@PingvinB
Copy link

PingvinB commented Sep 16, 2022

Oh. I will try to make it use a newer version then. Thank you!

Edit: What is the minimum required version of Xcode for sdk 46?

Edit 2: I changed the image in the pipeline from 'macOS-latest' (which apparently is macOS 11) to 'macOS-12'.
This uses /Applications/Xcode_13.4.1.app by default and the build was successful now 👍
Thanks again @wkozyra95

@kmehner
Copy link

kmehner commented Oct 21, 2022

Oh. I will try to make it use a newer version then. Thank you!

Edit: What is the minimum required version of Xcode for sdk 46?

Edit 2: I changed the image in the pipeline from 'macOS-latest' (which apparently is macOS 11) to 'macOS-12'. This uses /Applications/Xcode_13.4.1.app by default and the build was successful now 👍 Thanks again @wkozyra95

Do you have an example of how to change the image pipline in the configuration settings?

@jameswilddev
Copy link

jameswilddev commented Nov 9, 2022

I'm experiencing this today, we haven't added any non-Expo dependencies since the last successful build, and all of those dependencies were added using Expo's CLI, so they should be using compatible versions.

@jameswilddev
Copy link

Dependencies added (confirmed via Git diff):

    "expo-image-picker": "~13.3.1",
    "expo-camera": "~12.3.0",
    "expo-screen-orientation": "~4.3.0",
    "expo-image-manipulator": "~10.4.0"

@jameswilddev
Copy link

We did another build without making any changes at all and it worked, so maybe an intermittent issue somewhere/somehow? Do not know enough about EAS's architecture to say.

@w8ze-devel
Copy link

Hi everyone!

I come accross this error too and change the image used to build the application.

But once build, the IOS application systematically crashed.

Here is the log, maybe someone may have an idea

Last Exception Backtrace:
0   CoreFoundation                	0x1cbaed288 __exceptionPreprocess + 220 (NSException.m:200)
1   libobjc.A.dylib               	0x1e481d744 objc_exception_throw + 60 (objc-exception.mm:565)
2   UMJ                           	0x105070f8c RCTFatal + 668 (RCTAssert.m:146)
3   UMJ                           	0x1050efc14 -[RCTExceptionsManager reportFatal:stack:exceptionId:] + 488 (RCTExceptionsManager.mm:68)
4   UMJ                           	0x1050f04f8 -[RCTExceptionsManager reportException:] + 1412 (RCTExceptionsManager.mm:135)
5   CoreFoundation                	0x1cba75b24 __invoking___ + 148 (:-1)
6   CoreFoundation                	0x1cba93610 -[NSInvocation invoke] + 468 (NSForwarding.m:3378)
7   CoreFoundation                	0x1cbaca5fc -[NSInvocation invokeWithTarget:] + 80 (NSForwarding.m:3475)
8   UMJ                           	0x1050a381c -[RCTModuleMethod invokeWithBridge:module:arguments:] + 460 (RCTModuleMethod.mm:584)
9   UMJ                           	0x1050a5e08 facebook::react::invokeInner(RCTBridge*, RCTModuleData*, unsigned int, folly::dynamic const&, int, (anonymous namespace)::SchedulingContext) + 536 (RCTNativeModule.mm:183)
10  UMJ                           	0x1050a5a3c operator() + 68 (RCTNativeModule.mm:104)
11  UMJ                           	0x1050a5a3c invocation function for block in facebook::react::RCTNativeModule::invoke(unsigned int, folly::dynamic&&, int) + 112 (RCTNativeModule.mm:95)
12  libdispatch.dylib             	0x1cb752e6c _dispatch_call_block_and_release + 32 (init.c:1517)
13  libdispatch.dylib             	0x1cb754a30 _dispatch_client_callout + 20 (object.m:560)
14  libdispatch.dylib             	0x1cb75c124 _dispatch_lane_serial_drain + 668 (inline_internal.h:2622)
15  libdispatch.dylib             	0x1cb75cc80 _dispatch_lane_invoke + 392 (queue.c:3944)
16  libdispatch.dylib             	0x1cb767500 _dispatch_workloop_worker_thread + 648 (queue.c:6732)
17  libsystem_pthread.dylib       	0x23ccad0bc _pthread_wqthread + 288 (pthread.c:2599)
18  libsystem_pthread.dylib       	0x23ccace5c start_wqthread + 8 (:-1)

I just move to Expo 45 and here is my package.json

"dependencies": {
    "@react-native-async-storage/async-storage": "~1.17.3",
    "@react-native-masked-view/masked-view": "0.2.6",
    "@react-navigation/drawer": "^5.12.5",
    "@react-navigation/native": "^5.9.4",
    "@react-navigation/stack": "^5.14.5",
    "@types/react": "~17.0.21",
    "axios": "^0.24.0",
    "dayjs": "^1.10.5",
    "expo": "^45.0.0",
    "expo-application": "~4.1.0",
    "expo-blur": "~11.1.0",
    "expo-constants": "~13.1.1",
    "expo-device": "~4.2.0",
    "expo-document-picker": "~10.2.1",
    "expo-haptics": "~11.2.0",
    "expo-image-picker": "~13.1.1",
    "expo-linear-gradient": "~11.3.0",
    "expo-localization": "~13.0.0",
    "expo-notifications": "~0.15.4",
    "expo-sharing": "~10.2.0",
    "expo-splash-screen": "~0.15.1",
    "expo-status-bar": "~1.3.0",
    "i18n-js": "^3.8.0",
    "react": "17.0.2",
    "react-dom": "17.0.2",
    "react-native": "0.68.2",
    "react-native-calendars": "^1.1263.0",
    "react-native-floating-action": "^1.22.0",
    "react-native-gesture-handler": "~2.2.1",
    "react-native-keyboard-aware-scroll-view": "^0.9.4",
    "react-native-mask-text": "^0.7.0",
    "react-native-pager-view": "5.4.15",
    "react-native-reanimated": "~2.8.0",
    "react-native-safe-area-context": "4.2.4",
    "react-native-screens": "~3.11.1",
    "react-native-web": "0.17.7",
    "react-native-webview": "11.18.1"
  },
  "devDependencies": {
    "@babel/core": "^7.12.9",
    "@react-native-community/eslint-config": "^2.0.0",
    "@types/i18n-js": "^3.8.1",
    "@types/react-native": "~0.67.6",
    "@types/react-native-calendars": "^1.1264.3",
    "eslint": "^7.28.0",
    "jest-expo": "^45.0.0",
    "typescript": "~4.3.5"
  },
  "resolutions": {
    "@types/**/@types/react-native": "~0.67.6"
  },
  "jest": {
    "preset": "jest-expo",
    "transformIgnorePatterns": [
      "node_modules/(?!(jest-)?react-native|react-clone-referenced-element|@react-native-community|expo(nent)?|@expo(nent)?/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|@sentry/.*)"
    ]
  }

@w8ze-devel
Copy link

The error was thrown by incompatibility with a non expo-managed javascript library. In my case it was react-native-keyboard-aware-scroll-view.

@JordanDDisch
Copy link

I'm getting this error as well on Expo's build servers

❌  ld: could not reparse object file in bitcode bundle: 'Invalid bitcode version (Producer: '1316.0.21.2.3_0' Reader: '1300.0.29.3_0')', using libLTO version 'LLVM version 13.0.0, (clang-1300.0.29.3)' for architecture arm64

I copied the eas.json above with a newer cli version

{
  "cli": {
    "version": ">= 0.53.1",
    "requireCommit": true
  },
  "build": {
    "development": {
      "developmentClient": true,
      "distribution": "internal",
      "android": {
        "gradleCommand": ":app:assembleDebug"
      },
      "ios": {
        "buildConfiguration": "Debug",
        "image": "latest"
      }
    },
    "preview": {
      "distribution": "internal"
    },
    "production": {}
  },
  "submit": {
    "production": {}
  }
}

and my package.json is

  "dependencies": {
    "app": "*",
    "expo": "^44.0.0",
    "expo-dev-client": "~0.8.6",
    "expo-linear-gradient": "~11.0.3",
    "expo-splash-screen": "~0.14.1",
    "expo-status-bar": "~1.2.0",
    "react": "17.0.1",
    "react-dom": "17.0.1",
    "react-native": "0.64.3",
    "react-native-gesture-handler": "~2.1.0",
    "react-native-reanimated": "~2.3.1",
    "react-native-safe-area-context": "3.3.2",
    "react-native-screens": "~3.10.1",
    "react-native-web": "0.17.1"
  },
  "devDependencies": {
    "@babel/core": "^7.12.9",
    "@types/react": "~17.0.21",
    "@types/react-native": "~0.64.12",
    "typescript": "~4.3.5"
  },
  "scripts": {
    "start": "expo start --dev-client",
    "android": "expo run:android",
    "ios": "expo run:ios",
    "web": "expo start --web"
  },

The eas build --platform ios --profile development command sort of builds (builds but doesn't run). I'm stumped as I can run the app locally no problem.

This causes apple to flag our code because adds development API calls it seems?

The app references non-public selectors in YOUR_APP: _isKeyDown, _modifiedInput, _modifierFlags. If method names in your source code match the private Apple APIs listed above, altering your method names will help prevent this app from being flagged in future submissions. In addition, note that one or more of the above APIs may be located in a static library that was included with your app.

@zackha
Copy link

zackha commented Nov 15, 2023

I had the same problem, do a general cleanup in the credentials section of your project in your expo.dev account and then do a rebuild.

@cgallonJurisoft
Copy link

Removing accent on name in app.json solved it for me

{ "expo": { "name": "withoutAccent" ...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs review Issue is ready to be reviewed by a maintainer
Projects
None yet
Development

No branches or pull requests