【问题标题】:HERE API iOS Integration: missing required architecture x86_64HERE API iOS 集成:缺少所需的架构 x86_64
【发布时间】:2019-04-22 17:00:38
【问题描述】:

我正在尝试将 HERE API(通过手动框架导入 - 我们不使用 pod)集成到我们当前的项目中,但出现以下错误:

ld: warning: ignoring file ./NMAKit.framework/NMAKit, missing required architecture x86_64 in file
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_NMAApplicationContext", referenced from:
  objc-class-ref in MapManager.o
ld: symbol(s) not found for architecture x86_64

阅读了用户指南和自述文件,但没有看到任何有助于解决此问题的内容。

只是框架不支持那个拱门吗?还是我错过了某个设置等?

提前致谢。

【问题讨论】:

    标签: here-api


    【解决方案1】:

    HERE iOS SDK(HERE iOS SDK Premium Edition v3.11 和 HERE iOS SDK Starter Edition v3.11)都具有 x86_64 架构。

    我假设您已经执行了simulator architecture stripping script,它用于应用程序发布。 您可以在终端中使用lipo 命令检查可用的架构:

    $ lipo -info YOUR_PROJECT_LOCATION/NMAKit.framework/NMAKit 
    Architectures in the fat file: NMAKit are: x86_64 i386 armv7 arm64 
    

    如果您没有所有架构,请下载 HERE iOS SDK:

    注意:我建议您使用真机进行产品开发和验证。可以使用模拟器(x86_64架构)进行一般的开发,但是它与真实设备有很多差异(至少在iOS API支持,硬件,显示差异)。有关差异的更多详细信息,请访问Apple Simulator Overview documentation

    【讨论】:

    • 谢谢!我重新下载了框架的新副本(不要使用 pod)并注释掉了该脚本。该应用程序现在构建良好。关于模拟器的使用,尽管存在细微差别,但为真实设备不断构建要慢得多。我们在整个真实设备系列中进行测试和验证,但对于日常开发工作,模拟器更加可行。
    猜你喜欢
    • 2015-04-23
    • 2016-02-03
    • 1970-01-01
    • 2015-10-10
    • 2013-10-15
    • 1970-01-01
    • 2013-12-14
    • 2014-12-20
    • 1970-01-01
    相关资源
    最近更新 更多