XCode 7 / Cordova 插件 / 链接问题:_utf8_nextCharSafeBody 未定义符号
Posted
技术标签:
【中文标题】XCode 7 / Cordova 插件 / 链接问题:_utf8_nextCharSafeBody 未定义符号【英文标题】:XCode 7 / Cordova plugin / Link issue: _utf8_nextCharSafeBody undefined symbol 【发布时间】:2016-08-22 02:54:37 【问题描述】:我正在调整一个(显然已经过时的)Cordova 插件,以便在我的应用程序中使用(如果您感兴趣的话,可以使用 PhoneRTC)。
作为一个核心的 Linux/CLI 人,我已经在 XCode 上苦苦挣扎了一天,并且通过大量的 Google 和一些盲目的猜测,我设法消除了大部分已弃用的代码。但是,现在我在链接阶段遇到了最后一个错误:
“架构 arm64 的未定义符号:“_utf8_nextCharSafeBody”,引用自:[snip]”
插件的原始安装说明提到将二进制文件链接到库 libicucore.dylib,但这似乎已在最新的 XCode 中删除(有可用的 .tbh 扩展名的同名引用,但这些对那个对话框——尽管我可以选择它们,但无论如何)。
更多谷歌搜索提供了链接各种 *.frameworks 的建议,但无济于事 - 错误仍然存在。
有谁知道我需要链接到什么才能使此功能可用?或者如果它被永久删除,我也想知道,尽管这将涉及重建二进制文件,这不是我所期待的......
或者,如果您不知道,是否有办法以某种方式通过 Apple 的库进行 grep 以查看应该定义丢失符号的库?
(不用说,如果我能做到这一点,它将从原始回购中分叉并捐赠回社区:))
【问题讨论】:
【参考方案1】:所以,我不确定什么我到底做了什么改变,但突然间我可以将 libicucore.tbh 添加为链接库。我可能更改了构建目标或其他东西,但无论如何链接错误消失了(由 XCode 的签名错误替换,但我可以解决)。
【讨论】:
以上是关于XCode 7 / Cordova 插件 / 链接问题:_utf8_nextCharSafeBody 未定义符号的主要内容,如果未能解决你的问题,请参考以下文章
Cordova - XCode10编译热更新插件错误解决方法!
ShareKit 插件不工作 - Cordova 1.9 & ShareKit 2.0 & ShareKit js 插件 & Xcode 4.4
带有 xcode 5.1 的 cordova 3.4 不会使用最新的文件传输插件构建
如何让 Cordova 通过插件自动嵌入自定义 iOS 框架?