EAS iOS build failing after upgrading to v42 beta framework

Seeing my iOS build failing now that I’ve upgraded to v42 beta framework and installed the latest Pods.

Build is succeeding locally but failing on EAS with a linker error. Details in github


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


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

Out of curiosity, what version of Xcode is installed on the EAS machines? Perhaps we need to update to a newer version?

by default eas is using xcode 12.4, but there is image with 12.5 you can specify in eas.json

I am having this same issue.

Hey @b_h and @zainy, could you try specifying the xcode image like Wojciech mentioned and let us know if it resolves these errors?

1 Like

in your build profile, add:

"image": "latest"

Yes, it worked. Thank you!!

Sir how to open build profile?

refer to the documentation for information on this: Configuring EAS Build with eas.json - Expo Documentation

Hi @notbrent , I have the same issue but once the app is ejected when trying to archive it. Any ideas how to fix this. Thanks

install the latest version of xcode

@notbrent thanks that worked for the archive , however I came to my initial problem that is the following error.
ERROR ITMS-90022: "Missing required icon file. The bundle does not contain an app icon for iPhone / iPod Touch of exactly ‘120x120’ pixels. I started having this issue 2 days ago with sdk 40 , tried adding new icons , however this error persists. Any idea of where I can debug this issue. I assume it has to do with the Expo eject step not generating the correct icons for some reason. Currently already upgraded to sdk42
Thanks

if you are using a bare project, make sure that you set a valid icon set inside xcode. app.json won’t work in that case. if you are using a managed project, make sure your app.json points to a valid icon

@notbrent

Ok so this icon set would need to be inserted via script in the generated files from the Expo Eject step ?
For example I add the folder with the correct assets to the file storage of the build. And then via script copy this folder to replace the one that “Expo eject” made ?
Or would you recommend going to the “managed” flow way instead of using Expo Eject.

@lgarro If you don’t need to eject it’s probably a good idea not to. Maybe give it a try