在Mac下使用QT调用OpenCV产生error: symbol(s) not found for architecture x86_64错误

来源:互联网 发布:notepad配置java 编辑:程序博客网 时间:2024/06/06 08:35

更新Mac到10.9.2版本,同时更新了Xcode,这时候再用QT到时候发现调用OpenCV就出错:error: symbol(s) not found for architecture x86_64

看起来就是没有找到合适的lib文件,太坑爹了,之前还是用得好好的。

重装Xcode, 重装OpenCV,重装QT后无效。

后来千辛万苦终于找到结果了,大神在这里:

http://stackoverflow.com/questions/20342896/solved-qt5-1-qt5-2-mac-os-10-9-mavericks-xcode-5-0-2-undefined-symbols

因为OpenCV是用Xcode编译的,而新的Xcode调用的OS X 10.9,但是QT还没有更新,还是用10.6,所以编译后的OpenCV就不会被QT识别了。


解决:

更改 ../Qt5.2.0/5.2.0-rc1/clang_64/mkspecs/macx-clang/qmake.conf  文件中的

QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.6
改为

QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.9
然后对QT对工程先清理,再rebuild,就可以编译了。

1 0
原创粉丝点击