ios - Cocoapods 导致 Xcode Simulator 但不是设备的“找不到库”和标头“找不到文件”错误
问题描述
我在我的 Xcode 项目中使用 Cocoapods,但在使用模拟器构建时似乎会导致“找不到库”和标题“找不到文件”错误,但当我连接设备或使用“通用 iOS 设备”时不会”。
我的 Podfile 很简单。我那里只有一个 pod,用于 Microsoft 的 ADAL SDK,用于单点登录。当我使用 use_frameworks 时!在我得到的 Podfile 中:
fatal error: 'ADAL/ADAL.h' file not found
为线
#import <ADAL/ADAL.h>
但如果我使用 use_modular_headers!而不是use_frameworks!我得到:
ld: warning: directory not found for option '-L/Users/memyself/Documents/iOS_Projects/ASSIST-main/ASSIST-main/DerivedData/MyApp/Build/Products/Debug-iphonesimulator/ADAL'
ld: library not found for -lADAL
即使我禁用了这两者,它也可以为设备和“通用 iOS 设备”构建良好,但失败并出现“未找到文件”错误。
是的,对于这些类型的错误(例如这里)有很多 SO 问题和答案,但尝试它们没有成功。具体来说,我在推荐的搜索路径中使用 $(inherited),将 enable bitcode 设置为 NO,确保我打开的是 xcworkspace 而不是 xcodeproj 文件,并尝试过
$ pod deintegrate
$ pod clean
$ rm Podfile
此外,我的应用程序使用 AWS 和 Firebase,我遇到了同样的问题,但能够通过手动添加必要的框架来修复它们。但是,我没有 ADAL 框架,坦率地说,我需要解决这个问题,这样我才能使用 Cocoapods 来安装和管理我的 AWS 和 Firebase 依赖项。非常可疑的是,它仅在为模拟器构建时失败,哪些项目设置可能导致这种情况?
解决方案
推荐阅读
- javascript - 屏幕右边缘的Material-ui AppBar和Tab
- javascript - 如何在有行限制的 10 个字符后添加换行符
- javascript - 有没有办法在 React 中滚动到 div 或容器的底部而不将整个页面滚动到底部?
- java - 检查数组在函数中不起作用。(爪哇)
- javascript - React Native Drawer Navigation 总是自动关闭
- firebase - 删除 SwiftUI 后 Firebase Firestore 不更新 UI
- database - 如果名称在 Laravel 中重复,如何添加数量?
- c++ - DLL 函数参数类型不完整导致结果不正确
- node.js - Kubernetes 多容器通信
- android - 如何在android中将顶部手柄添加到底部?