使用react-native-firebase,在本机应用程序中,链接器命令失败

时间:2017-08-04 10:45:49

标签: xcode react-native

我使用react-native-firebase库开发了一个react native应用程序。 我想设置我的应用图标,因此我使用了这个库:来自herenpm install -g yo generator-rn-toolbox

当我尝试构建项目时,我收到此错误:

Undefined symbols for architecture arm64: "_OBJC_CLASS_$_RCTSRWebSocket", referenced from: objc-class-ref in libReact.a(RCTInspectorPackagerConnection.o) "_OBJC_CLASS_$_RCTReconnectingWebSocket", referenced from: objc-class-ref in libReact.a(RCTPackagerConnection.o) ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation) 我该如何解决这个问题?

3 个答案:

答案 0 :(得分:9)

我通过手动添加RCTWebsocket库来修复它:

  1. 找到RCTWebsocket项目:open -R node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj
  2. 将其拖放到项目Libraries文件夹下的xcode
  3. 在您的项目上,选择您的项目目标,然后转到"构建阶段" - > "将二进制文件链接到库" - > " +"
  4. 搜索libRCTWebSocket.a并添加
  5. 你的项目现在应该建立。如果第4步中没有libRCTWebSocket.a,请先尝试构建项目。

答案 1 :(得分:4)

我在iOS 12,XCode 10中遇到了类似的问题。 对于那些可能会有所帮助的人(并避免像我一样浪费时间。) 我必须在YourProject-> Targets-> YourProject-> libRCTWebSocket.a列表中添加libfishhook.aLink Binary With Libraries二进制文件

答案 2 :(得分:3)

我可以通过在libReact之前放置libRCTWebSocket.a来构建应用程序。

xcode linker settings