在Xcode项目中使用OpenCV会产生链接器错误

时间:2011-09-24 00:05:32

标签: objective-c xcode4 opencv

在通过cmake进程构建和安装opencv之后,我采取了一些建议的步骤将库集成到Xcode项目中。

  • 我在libopencv_core.dylib和libopencv_highgui.dylib的构建阶段使用“Link Binary With Libraries”
  • “标题搜索路径”包含/ usr / local / include /和/ usr / include /(opencv标题本身位于/ usr / local / include / opencv2中,我试图包含这些标题)
  • “Library Search Paths”包含/ usr / local / lib和/ usr / lib(opencv dylib文件位于/ usr / local / lib /中)

然后我添加了一些演示opencv代码。当我运行这个项目时,我会遇到链接问题所带来的错误:

Apple Mach-O Linker Error: Undefined symbols for architecture x86_64: "_cvCvtColor", referenced from:

在我包含的dylib上使用file显示了我的期望:

file /usr/local/lib/libopencv_core.dylib /usr/local/lib/libopencv_core.dylib: Mach-O 64-bit dynamically linked shared library x86_64

file /usr/local/lib/libopencv_highgui.dylib /usr/local/lib/libopencv_highgui.dylib: Mach-O 64-bit dynamically linked shared library x86_64

这两个文件都是为适当的架构而构建的,并且(我认为)已正确添加到项目中。如何调试我可能遇到的其他链接器问题?我从哪里开始?

1 个答案:

答案 0 :(得分:7)

cvtColor位于libopencv_imgproc.dylib中。将其添加到“Link Binary with Libraries”阶段,您应该很好。