expo / eas-cli

Fastest way to build, submit, and update iOS and Android apps
https://docs.expo.dev/eas/
MIT License
749 stars 79 forks source link

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

Closed luca-betcha closed 2 years ago

luca-betcha commented 2 years ago

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
hunterunger commented 2 years ago

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 commented 2 years ago

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 commented 2 years ago

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

luca-betcha commented 2 years ago

Thanks! Does anyone know how to easy detect the third-party lib compiled with the newest XCode?

Get Outlook for iOShttps://aka.ms/o0ukef


From: Wojciech Kozyra @.> Sent: Friday, April 22, 2022 1:37:48 PM To: expo/eas-cli @.> Cc: Luca Agostini @.>; Author @.> Subject: Re: [expo/eas-cli] eas build -p ios | Fastlane build failed with unknown error (Issue #1079)

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

— Reply to this email directly, view it on GitHubhttps://github.com/expo/eas-cli/issues/1079#issuecomment-1106428406, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AXEMV5IXN77AGVMQSTOHOYTVGKFQZANCNFSM5T7VESWQ. You are receiving this because you authored the thread.Message ID: @.***>

Hadajung commented 2 years ago

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 commented 2 years ago

the latest image is now using xcode13.3

frankbret commented 2 years ago

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 commented 2 years ago

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

frankbret commented 2 years ago

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 commented 2 years ago

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.

faustoct1 commented 2 years ago

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

cmonkey03 commented 2 years ago

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 commented 1 year ago

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 commented 1 year ago

@xubmuajkub me, too.

Using Expo 46, ejected app, MacBook M1, Xcode

PingvinB commented 1 year ago

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 commented 1 year ago

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

PingvinB commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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 commented 1 year ago

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 commented 9 months ago

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 commented 3 months ago

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

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

mikeRChambers610 commented 3 months ago

I am getting this issue on SDK 51. Everything worked fine using SDK 49.