首页 > 解决方案 > 错误:在 IOS 项目(swift)中嵌入 Unity(Vuforia)时架构 arm64 的未定义符号

问题描述

我正在尝试在现有的 IOS 项目中嵌入一个 Unity 项目(带有 Vuforia 和地图框)。我按照以下步骤操作:

但是,最后,我遇到了错误undefined symbols for architecture arm64,似乎libVuforiaWrapper.a哪个是统一文件有问题。

详细错误如下:

ld: warning: directory not found for option '-L/Users/ericquan/Desktop/UnityAppDemo/AppDemo/../UnityIOS/Libraries/Plugins/iOS'


Undefined symbols for architecture arm64:

"_inflateInit2_", referenced from:
      -[NSData(GZIP) mme_gunzippedData] in libMapboxMobileEventsStatic.a(NSData+MMEGZIP.o)

"Vuforia::MetalRenderData::MetalRenderData()", referenced from:
      __GLOBAL__sub_I_PlatformiOS.mm in libVuforiaWrapper.a(PlatformiOS.o)


 (maybe you meant: _unity_z_inflateInit2_, _il2cpp_z_inflateInit2_ )

Xcode 版本:9.4.1

统一版本:2018.1.0f2

其他:Vuforia用于unity项目

试验:

  1. 在构建设置中,将架构 arm64 更改为 armv7 armv7s。
  2. 重新导入 libVuforiaWrapper.a

我在这一点上坚持了一天,有没有人愿意帮忙?谢谢!!!!

标签: iosswiftunity3d

解决方案


我已经找到了解决方案。您必须在项目中添加 Vuforia.framework。

查看这个网站以获得使用 vuforia.framework 的基本概念

https://library.vuforia.com/articles/Solution/Getting-Started-with-Vuforia-for-iOS-Development.html

对于您的项目,您应该访问下面的网站并按照“在 Xcode 中构建”部分中的步骤进行操作

https://library.vuforia.com/articles/Solution/how-migrate-vuforia-7_2.html


推荐阅读