opencv 无法在启用 ipp 支持的情况下构建
Posted
技术标签:
【中文标题】opencv 无法在启用 ipp 支持的情况下构建【英文标题】:opencv fails to build with ipp support enabled 【发布时间】:2012-05-09 01:59:26 【问题描述】:我在使用 ipp 支持构建 opencv 时遇到了一些问题。我在 debian squeeze 32bit 上使用 cmake-gui 和 ipp 的最新 intel 版本(完整的 composer
包)。
我认为我已经正确配置了 cmake。当我在启用 ipp 的情况下构建时,构建失败并出现以下错误:
/usr/bin/ld: /opt/intel/ipp/lib/ia32/libippcv_l.a(ippcv00242as.o): relocation R_386_GOTOFF against undefined symbol `ippJumpIndexForMergedLibs' can not be used when making a shared object
/usr/bin/ld: final link failed: Bad value
这对我来说似乎不是配置类型错误 :-)
知道如何解决这个问题吗?
谢谢,
-安德烈斯
【问题讨论】:
获取有关 OpenCV 邮件列表的帮助。 【参考方案1】:我解决了这个问题,并认为我应该回答我自己的问题,以防万一其他人遇到这个问题。
显然,当您指定共享库构建时,opencv 库将无法正确构建。使用 cmake-gui 时,不能设置此选项:
BUILD_SHARED_LIBS
通过禁用此选项,opencv 库可以正常构建和安装
【讨论】:
通过禁用此选项,我能够构建和安装 Opencv。但是当我用 opencv 和 ipp 编译我的应用程序时,它在链接时给了我数百个“未定义的引用”错误。你能给我一些提示吗? @arshan 你有没有发现这个错误?我也卡在这里了 @wprins 不幸的是我无法解决这个问题。据我所知,我刚刚禁用了 IPP 支持。 我希望我能帮上忙,wprins 和 arshan,但老实说,这是很久以前的事了,我记不清细节了。那时我刚开始使用 cmake,所以整个环境对我来说都是新的。我目前没有积极参与 OpenCV。我会建议 OpenCV 相关论坛。抱歉,我不能提供更多帮助。祝你好运——我感受到你的痛苦和挣扎。 我使用 BUILD_SHARED_LIBS=OFF 和 WITH_IPP=OFF 来让事情正常工作【参考方案2】:如果您的处理器不是英特尔系列,请执行cmake -D WITH_IPP=OFF
,您不需要它。然后make
。
【讨论】:
以上是关于opencv 无法在启用 ipp 支持的情况下构建的主要内容,如果未能解决你的问题,请参考以下文章
当我尝试在启用推理引擎的情况下编译 OpenCv 时,出现错误
Inter IPP & Opencv + codeblocks 在centos 环境下的配置