未找到ios的React本机基本标头

Pet*_* G. 15 xcode linker objective-c ios react-native

在iOS链接阶段,我开始看到我的React Native项目的错误.

反应原生版本:0.41.2,0.40,0.39

一切正常,我编辑了Android版本,React Native代码没有改变,当这种链接错误开始显示/node_modules/react-native/React/Base/{RCTHeaderName.h}路径上的标题未找到时:

错误

In file included from /Users/user/ReactNativeProject/node_modules/react-native-vector-icons/RNVectorIconsManager/RNVectorIconsManager.h:9:
../react-native/React/Base/RCTBridgeModule.h:12:9: fatal error: 'React/RCTDefines.h' file not found
#import <React/RCTDefines.h>
        ^
Run Code Online (Sandbox Code Playgroud)
  • Link Binary With Libraries中,我包含了核心React库(libReact.a).

  • 的位置RCTLog.hPROJECTROOT/node_modules/react-native/React/Base/RCTLog.h,但进口是#import <React/RCTLog.h>

  • 新添加React.xcodeproj到库中没有帮助,Xcode Product > Clean没有帮助,也没有重新启动Xcode

  • react-native run-android工作,react-native run-ios显示错误

  • 文件权限设置为执行的用户 react-native run-ios

小智 31

您是否已Parallelize build选中未选中的选项,并且在您的构建目标中首先列出了React?

您可以在Xcode中找到此窗口=>运行按钮附近的项目图标=>编辑方案=>构建选项卡


DàC*_*hún 5

更新:Facebook React-Native上的解决方案 https://github.com/facebook/react-native/issues/11813

============

这个问题也发生在我身上。看来React.xcodeproj只识别配置DebugRelease。React.xcodeproj的所有输出都被写入Debug-iphonesimulatorRelease-iphonesimulator

这意味着,如果您具有“ Debug / Release”以外的其他配置,则输出仍将被写入Debug-iphonesimulatorRelease-iphonesimulator,这不是我们想要的。

因此,解决方案是在React.xcodeproj中添加相同的配置以匹配您自己的项目之一。

例如,如果您在自己的项目中具有“ Debug / Release / Test / AppStore” 4个配置,则必须确保React.xcodeproj也具有相同的4个配置。

请单击“配置”的“ +”按钮,然后单击“复制发行版配置”,然后根据需要将其重命名。

在此处输入图片说明