I am working on an Apple M2 Pro, MacOS Sonoma 14.3.1.
Today Xcode automatically updated from 15.2 to 15.3 and downloaded the new 17.4 simulators and runtime tools. I can no longer run my apps in simulator.
On Xcode 15.2, there was an option to choose the destination architecture, under Product -> Destination -> Destination Architectures -> Rosetta (the one I have ben required to select in order to run apps for the last few versions).
On Xcode 15.3, the option to chose the destination architecture is now missing.
I am still able to build successfully to my phone directly.
I am unable to build to a simulator, I get the same error for regarding a linker error failure.
I have tried:
- reboot laptop
- delete information stored in derived data
- delete local Podfile.lock
- delete Pods folder
- pod install
- reopen xcode
- run on device - works!
- run on 17.2 simulator - fails with error
- run on 17.4 simulator - fails with error
Our Podfile looks like this:
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
require_relative '../node_modules/react-native-permissions/scripts/setup'
platform :ios, '13.4'
prepare_react_native_project!
setup_permissions([
'AppTrackingTransparency',
'Camera',
'LocationAlways',
'LocationWhenInUse',
'Notifications',
])
target 'myapp' do
config = use_native_modules!
# @react-native-firebase/app requirement:
use_frameworks! :linkage => :static
$RNFirebaseAsStaticFramework = true
use_react_native!(
:path => config[:reactNativePath],
# to enable hermes on iOS, change `false` to `true` and then install pods
:hermes_enabled => false
)
# Pods for GoogleMaps on iOS
rn_maps_path = '../node_modules/react-native-maps'
pod 'react-native-google-maps', :path => "#{rn_maps_path}"
pod 'react-native-camera', path: '../node_modules/react-native-camera', subspecs: [
'BarcodeDetectorMLKit'
]
pod 'RNSquareInAppPayments', :path => '../node_modules/react-native-square-in-app-payments'
target 'myappTests' do
inherit! :complete
# Pods for testing
end
# Enables Flipper.
#
# Note that if you have use_frameworks! enabled, Flipper will not work and
# you should disable the next line.
# use_flipper!("Flipper-DoubleConversion" => "1.1.7") #avoid duplicate symbols for architecture x86_64 for Folly
post_install do |installer|
react_native_post_install(installer)
installer.pods_project.targets.each do |target|
if target.name == "RCT-Folly"
target.build_configurations.each do |config|
config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= ['$(inherited)', 'FOLLY_HAVE_CLOCK_GETTIME=1']
end
end
end
end
end
I'm open to additional suggestions, at this point, I can't see a way to tell xcode that we need the other build option (like specifying Rosetta which I used to be able to do). Also, if anyone can help me understand why it is doing this, I'm busy on Google, but not finding what I'm looking for, so I wonder if I'm looking for the right things.
Thanks so much!
Error: