【问题标题】:JavaScriptCore Mach-O Linker error, Xcode 6.2JavaScriptCore Mach-O 链接器错误,Xcode 6.2
【发布时间】:2015-02-03 14:46:10
【问题描述】:

我需要使用 JavaScriptCore 从我的手表应用程序中调用 JS 函数,但我无法正确使用该框架,因为我一尝试使用它就收到此错误:

架构 i386 的未定义符号: “_OBJC_CLASS_$_JSContext”,引用自: AppDelegate.o 中的 objc-class-ref

我尝试了一个从 Ejecta 编译的项目:

https://github.com/phoboslab/Ejecta/tree/master/Source/lib

没用。而且我无法从那些 Ejecta 的二进制文件中编译。我正在下载最新的 Xcode 6.2 beta 5,以防我搞砸了 Xcode。我将 libicucore 和 libstdc++ 库以及 JavaScriptCore 编译框架添加到我的项目中。此外,我将“仅构建活动架构”设置为“否”。

【问题讨论】:

    标签: ios objective-c xcode javascriptcore


    【解决方案1】:

    Ejecta 构建的 JavaScriptCore 没有新的 Objective-C API - 这就是链接器找不到 JSContext 的原因。恐怕如果你不能使用 iOS 7 中引入的 JavaScriptCore 版本,那你就倒霉了。您甚至无法使用 JSContext API 自行构建 JavaScriptCore,因为它的实现依赖于对 libobjc 中的几个私有函数的访问,这可能会导致您的应用无法通过 App Store 审批流程。

    【讨论】:

    • 我无法在 Xcode 6.2 beta 4 中使用 JavaScriptCore,不知道为什么。使用最后一个 Xcode 6.2 beta 5。也许我搞砸了。无论如何,谢谢!
    猜你喜欢
    • 2013-12-03
    • 2012-12-31
    • 2017-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-02
    • 2013-02-06
    • 2013-06-29
    相关资源
    最近更新 更多