【问题标题】:Apple Match-O Linker Error / clang: error: no such file or directory - Xcode 11Apple Match-O Linker Error / clang: error: no such file or directory - Xcode 11
【发布时间】:2020-02-12 20:00:35
【问题描述】:

我正在开发一个 React Native 应用程序,每当我尝试构建应用程序时都会遇到这些错误。我知道关于这个问题有很多类似的问题,但那里给出的解决方案对我不起作用。

clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTRestart.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libReactNativePermissions.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNCPushNotificationIOS.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNReanimated.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNGestureHandler.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNMixpanel.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNCAsyncStorage.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTAnimation.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNVectorIcons.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNReactNativeDocViewer.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNFS.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libCodePush.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNDocumentPicker.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNImagePicker.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNI18n.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNBlur.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libART.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTVideo.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTActionSheet.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTGeolocation.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTImage.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTLinking.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTNetwork.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTSettings.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTText.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTVibration.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTWebSocket.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNSpinkit.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNSentry.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNGeocoder.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRCTContacts.a'
clang: error: no such file or directory: '/Users/FaisalHussain/Library/Developer/Xcode/DerivedData/blonk-eatmzbgmhuzfadfqxgotpiqwsapb/Build/Products/Debug-iphonesimulator/libRNOpenAppSettings.a'

我已经搜索过,但我仍然被困在这里。我尝试使用react-native link 进行链接。我已尝试删除应用程序的 DerivedData 文件夹。因此,我已经尝试了一切,但似乎无法找到解决方案。所以我求助于你们,请提出任何解决方案来解决这个问题。期待您的回答。提前谢谢你。

【问题讨论】:

  • 你为什么不告诉你的编译器去哪里寻找库? -L 选项。
  • @JesperJuhl ...我应该在哪里添加 -L 标志?我应该将它添加到构建设置的“其他链接器标志”选项中吗?
  • 我不知道您应该将它添加到您选择的 IDE 的哪个位置。我只是告诉你需要传递给编译器的参数应该是什么。你如何做到这一点是你的问题。
  • 是的,将其添加到其他链接器标志。它应该可以工作。
  • 我已将 -L 添加到构建设置中的其他链接器标志,但它不起作用

标签: c++ ios xcode react-native clang


【解决方案1】:

如果您使用的是 cocoapods(鉴于 rn 的最新版本很可能是这种情况),请尝试以下操作:

  1. 进入ios文件夹。
$ cd ios
  1. 如果您没有安装cocoapods,请尝试运行:
$ gem install cocoapods # Try with `sudo` if it doesn't work.

你也可以考虑为你的项目锁定 cocoapods 版本,阅读更多here

  1. 运行pod install
  2. 然后确保打开扩展名为.xcworkspace 的文件。

最后,再次尝试构建。

【讨论】:

  • 我之前已经完成了这个过程,但它不起作用。仍然得到相同的错误。还有其他建议吗?
  • 也许在运行上述指令之前清除项目并删除DerivedData文件夹会对您有所帮助。
【解决方案2】:

我看到您从 0.48 升级到 0.59。那是很多版本和很多要跳转的重大更改。

我的建议是,创建一个新的、干净的 0.59.10 项目,然后慢慢将所有代码和依赖项移至新项目。有很多事情要尝试和检查。可能您的标题搜索路径错误或过时。

也许某个依赖项不再支持您的 RN 版本。或者,您可能在链接库列表中缺少一个库。

说实话,要尝试的东西太多了。只需从头开始做一个新项目,然后开始一一添加您的依赖项。

【讨论】:

  • 我怀疑从头开始创建一个新项目会很痛苦,因为以前的开发人员已经使用了很多依赖项,并且为一些依赖项添加了添加到 appdelagte.m 的代码。包名也有问题,android和ios的包名不同
  • 如你所愿,但根据我迁移和跳转多个类似版本的经验,我总是从头开始。
  • 我还有什么其他选择?如果您在我的问题中看到只有那些依赖项会给出此错误。我也更新了这些依赖项
  • 真的没有那么糟糕,升级到更新的版本(大约 60 个)是非常可取的,并且包含许多改进。
  • 我同意@sfratini ...我安装了许多过去 3 年没有更新的依赖项,所以我决定升级到 0.59.10 而不是升级到 0.60,当升级完成时并且该应用程序已发布,然后将致力于替换那些过时的依赖项,然后升级到最新的 RN 稳定版本
【解决方案3】:

你可以通过以下步骤:

Delete node_modules
Delete package-lock.json
Delete ios/Pods directory
Delete Podfile.lock file 

然后从您的终端一一运行以下命令。

cd root/project directory
npm install 
cd ios/ && pod install && cd ..

然后尝试构建您的应用程序

react-native run-ios

【讨论】:

  • 好的,让我完成这些步骤并回复您
  • 我希望它会起作用,但是如果您仍然遇到问题,请在这里告诉我。
  • 运气还是一样...这些错误我得到pastebin.com/FyuVZqCy
  • 能否请您打开 Xcode,然后构建/运行您的应用程序,看看它会向您显示什么错误??
猜你喜欢
  • 1970-01-01
  • 2022-08-15
  • 2022-07-11
  • 2019-07-23
  • 2015-12-24
  • 2012-06-03
  • 2014-10-05
  • 1970-01-01
  • 2018-11-22
相关资源
最近更新 更多