question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

iOS Release Build - Missing Required Architecture x86_64

See original GitHub issue

Steps to reproduce the problem

Everything works fine in debug mode. When I went to edit scheme -> clicked run option -> changed build configuration to Release and unchecked “debug executable”. I then went to Product -> build.

I have downloaded the bitcode thinking maybe that would solve the issue but it did not.

I tried removing my ios/pods and node_modules directories and installing everything fresh to see if that was the issue, it was not.

Expected behavior

I would expect this to build correctly.

Observerd behavior

ld: warning: ignoring file /Users/tom/bitbybit/mobile/node_modules/react-native-webrtc/apple/WebRTC.xcframework/ios-arm64/WebRTC.framework/WebRTC, missing required architecture x86_64 in file /Users/tom/bitbybit/mobile/node_modules/react-native-webrtc/apple/WebRTC.xcframework/ios-arm64/WebRTC.framework/WebRTC (1 slices)

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_RTCMediaConstraints", referenced from:
      objc-class-ref in libreact-native-webrtc.a(WebRTCModule+RTCPeerConnection.o)

  "_OBJC_CLASS_$_RTCDataBuffer", referenced from:
      objc-class-ref in libreact-native-webrtc.a(WebRTCModule+RTCDataChannel.o)

  "_OBJC_CLASS_$_RTCDataChannel", referenced from:
      __OBJC_$_CATEGORY_RTCDataChannel_$_React in libreact-native-webrtc.a(WebRTCModule+RTCDataChannel.o)

  "_OBJC_CLASS_$_RTCMediaStreamTrack", referenced from:
      __OBJC_$_CATEGORY_RTCMediaStreamTrack_$_React in libreact-native-webrtc.a(RTCMediaStreamTrack+React.o)

  "_OBJC_CLASS_$_RTCIceCandidate", referenced from:
      objc-class-ref in libreact-native-webrtc.a(RCTConvert+WebRTC.o)

  "_OBJC_CLASS_$_RTCConfiguration", referenced from:
      objc-class-ref in libreact-native-webrtc.a(RCTConvert+WebRTC.o)

  "_OBJC_CLASS_$_RTCIceServer", referenced from:
      objc-class-ref in libreact-native-webrtc.a(RCTConvert+WebRTC.o)

  "_OBJC_CLASS_$_RTCPeerConnectionFactory", referenced from:
      objc-class-ref in libreact-native-webrtc.a(WebRTCModule.o)

  "_OBJC_CLASS_$_RTCDefaultVideoDecoderFactory", referenced from:
      objc-class-ref in libreact-native-webrtc.a(WebRTCModule.o)

  "_OBJC_CLASS_$_RTCDataChannelConfiguration", referenced from:
      objc-class-ref in libreact-native-webrtc.a(RCTConvert+WebRTC.o)

  "_OBJC_CLASS_$_RTCEAGLVideoView", referenced from:
      objc-class-ref in libreact-native-webrtc.a(RTCVideoViewManager.o)

  "_OBJC_CLASS_$_RTCDefaultVideoEncoderFactory", referenced from:
      objc-class-ref in libreact-native-webrtc.a(WebRTCModule.o)

  "_OBJC_CLASS_$_RTCSessionDescription", referenced from:
      objc-class-ref in libreact-native-webrtc.a(RCTConvert+WebRTC.o)
      objc-class-ref in libreact-native-webrtc.a(WebRTCModule+RTCPeerConnection.o)

  "_OBJC_CLASS_$_RTCPeerConnection", referenced from:
      __OBJC_$_CATEGORY_RTCPeerConnection_$_VideoTrackAdapter in libreact-native-webrtc.a(WebRTCModule+VideoTrackAdapter.o)
      __OBJC_$_CATEGORY_RTCPeerConnection_$_React in libreact-native-webrtc.a(WebRTCModule+RTCPeerConnection.o)

  "_OBJC_CLASS_$_RTCCameraVideoCapturer", referenced from:
      objc-class-ref in libreact-native-webrtc.a(VideoCaptureController.o)

ld: symbol(s) not found for architecture x86_64

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

Platform information

  • React Native version: 0.63.2
  • Plugin version: 1.87.1
  • OS: iOS
  • OS version: 14.0

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:44 (9 by maintainers)

github_iconTop GitHub Comments

6reactions
gla5001commented, Jan 3, 2021

I actually found a solution. I just had to run the downloadBitcode script as a pre build step ./node_modules/react-native-webrtc/tools/downloadBitcode.sh.

2reactions
emndenizcommented, Jan 3, 2021

This issue is crazy. I am working on it at least 2 days and couldn’t found a proper solution. WebRTC.xcframework contains multiple architecture and when I delete arm64 compilation will success. Somehow when there is an arm64 architecture exist xcode can not compile it for simulator.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Xcode 6.1 Missing required architecture X86_64 in file
EX: I have a static library(libXYZ.a) to build. I run build for Generic iOS Device and got Product in Debug-iphoneos/ $ lipo - ......
Read more >
missing required architecture arm6… | Apple Developer Forums
After upgrading Xcoder to version 9.4, my apple TV project build fails with the following error when deploying to an Apple TV (tvOS...
Read more >
[Solved]-missing required architecture x86_64
You are trying to build a universal library and it does not have all the architectures in it armv7 armv7s i386 x86_64 arm64...
Read more >
Ios – missing required architecture x86_64 – iTecNote
I am using Xcode Version 7.0.1. Running: lipo -info myLibrary.a. shows: Architectures in the fat file: myLibrary.a are: armv7 arm64.
Read more >
Unable to build/run 87. Missing required architecture x86_64 ...
What version of your xCode is it? Do you have a paid developer account, or is it personal? Did you change the version...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found