ios - 构建反应原生 iOS 应用程序时出现 Clang 错误
问题描述
所以我有一个应用程序,我已经工作了几个月了。我在 Ubuntu 上开发并在我的安卓手机和平板电脑上进行了测试。该应用程序是使用基本的 react native 库设置的,我后来还在 expo 中添加了一些我需要的小东西 expo。如果您需要有关此的更多信息,请告诉我。
该应用程序“功能完整”,只需要进行游戏测试和发布。所以很自然地,我需要在 iOS 上启动并运行它。我目前正在租一台可以远程访问的 mac(因为我没有苹果产品)。
现在已经将近一周了,我只是无法克服这个错误(见底部)(或似乎相同/相似错误的变体)。我可以在这台 Mac 上构建一个新的应用程序,所以一切都可以构建反应原生应用程序。我尝试过:删除 pod 并运行
吊舱安装
跑步
吊舱解体 && 吊舱安装
删除节点模块并运行
npm 安装
最初我有一个错误,抱怨一些库是手动链接的,这很糟糕,所以我取消了它们的链接,现在我收到了这个错误。当我在 xcode 中运行时,我正在使用工作区文件打开该应用程序。如果通过命令行运行,我也会收到错误,即
npx react-native run-ios
使用不同的模拟器没有区别......不确定它是否在构建过程中达到了那么重要的程度。我认为这与 RN 库的链接和这个新的自动链接事物有关。有什么想法吗?有大量带有此错误(或接近错误)的帖子具有各种“解决方案”,但似乎没有任何区别。绝大多数人在删除 pod 文件夹或运行 pod deintegrate 命令后通过 pod install 来解决这个问题。查看错误,您可以看到它打印出大量库,其中一些是我安装的,另一些可能是我的 3rd 方库附带的,但有些看起来像核心库,甚至可能是构建 RN 的低级库(但是老实说,我不知道)。
Undefined symbols for architecture x86_64:
"_OBJC_METACLASS_$_UMAppDelegateWrapper", referenced from:
_OBJC_METACLASS_$_AppDelegate in AppDelegate.o
"_OBJC_CLASS_$_UMAppDelegateWrapper", referenced from:
_OBJC_CLASS_$_AppDelegate in AppDelegate.o
"_OBJC_CLASS_$_UMModuleRegistryProvider", referenced from:
objc-class-ref in AppDelegate.o
"_OBJC_CLASS_$_UMModuleRegistryAdapter", referenced from:
objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[编辑] 另外,我的库文件夹是空的。我注意到其他 RN 项目在查看屏幕截图时没有。可能的问题?
[编辑 2] 用户提出了以下问题解决方案:错误“_OBJC_CLASS_$_AppDelegate”,引用自:“和错误:链接器命令失败,退出代码 1(使用 -v 查看调用)” 给出了一些指示错误的。如果“符号”是文件,那么它们似乎不存在。这是尝试添加这些文件时出现的内容(屏幕上有更多字体和一些 pod 文件。):
解决方案
推荐阅读
- javascript - Using React router link inside template string does not working
- performance-testing - Load runner Ajax 真正的客户端协议脚本录制问题
- google-cloud-platform - 如何在云功能中串行处理文件?
- html - 根据不断变化的状态变量在反应中显示多个动态输入字段?
- dataframe - 如何在 PySpark aws Glue 中组合两个数据框
- python - python:在字符串末尾移动一个特定的单词
- c# - 数据表没有“Getvalue”的定义 - ASP.Net
- python - 如何在不同选项卡中的 Excel 中保存或导出多个数据框?
- java - TCP/IP服务器的spring boot处理
- laravel - 通过 Laravel 发送 FCM 消息以在我的 android 应用程序中打开深层链接