IOS动态框架,外部符号成为发布版本的非外部符号

标签 ios xcode dynamic frameworks

我已经构建了一个动态框架以用于各种项目。当我使用调试版本进行开发时,一切都运行良好,但是当我构建发布版本时,我遇到了缺少 Arm64 符号的错误。该框架构建为通用框架,经检查确实包含符号,不同之处在于,当编译为 Release 时,External Symbols 变为 Non-External。

使用 nm -m myframework.framework/myFramework

例如: 在调试中,sybol 文件可能如下所示: (__TEXT,__text) 外部 [Thumb] _SomeSymbolName

但在 Release 中它们看起来像这样:

(__TEXT,__text) 非外部(是私有(private)外部)[Thumb] _SomeSymbolName

知道为什么会这样吗?或者任何会导致这种情况的build设置?

最佳答案

解决方案是禁用

“默认隐藏的符号”

在build设置中

关于IOS动态框架,外部符号成为发布版本的非外部符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38885580/

相关文章:

ios - 使用AVAUDIOPLAYER从音频流中获取元数据

ios - Objective-C 类无法导入在顶层定义的 swift pod

javascript - 不使用 JavaScript 更改表单操作目标

ios - 如何将参数传递给 Swift 中的函数?调用中缺少参数

c# - 为什么这个运行时动态绑定(bind)会失败?

python - python中的条件类继承

ios - 使用 ffmpeg 将 Mp4 转为 HLS

ios - 完成后添加函数 ((bool) -> void)

ios - 在纵向/横向旋转中旋转除 UIImageView 之外的所有内容

ios - 通过 View Controller 传递用户数据