gpt4 book ai didi

ios - 将 OpenCV 框架导入 Unity 项目 iOS 时出错

转载 作者:行者123 更新时间:2023-11-29 04:34:44 30 4
gpt4 key购买 nike

我使用此处提供的脚本构建了 OpenCV: http://aptogo.co.uk/2011/09/opencv-framework-for-ios/

然后创建了一个Unity3d iOS项目,从Unity3d生成了xcode项目,将OpenCV框架添加到项目中并尝试编译。

我收到以下错误:

duplicate symbol _adler32 in /my-path/Libraries/libiPhone-lib.a(adler32.o) and /my-path/OpenCV.framework/OpenCV(adler32.o) for architecture armv7

我尝试使用“lipo”和“ar”从 OpenCV 库中删除 adler32.so,然后重新打包该库,我得到了另一个重复的符号。最终我从 OpenCV 库中删除了很多对象,它开始提示缺少符号。

这是一个有趣的实验,但没有成功。

如果我使用 OpenCV 在 xcode 上创建一个项目,它编译时不会出现错误。没有 OpenCV 的 Unity3d 项目也可以工作。

  • xcode 版本:4.3.3
  • unity3d 版本:3.5.2(最新)
  • OpenCV:2.4.1 - 添加 OpenCV 作为框架。

我在 xcode 下搜索了链接器选项,看看是否可以使其更加宽松,但没有找到任何内容。

知道如何解决该错误吗?

最佳答案

听起来 Unity 和 OpenCV 都是使用它们自己的 libz 副本构建的,并且在链接时存在冲突。 (_adler32 是此库中使用的校验和函数。)

您需要选择一个框架来拥有这些通用库并进行相应的重建。由于 libz 无论如何都在 iOS 中,您不妨构建两个框架来使用这些库的系统版本。

关于ios - 将 OpenCV 框架导入 Unity 项目 iOS 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11215301/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com