C++ openCV未定义的符号\u CVT颜色

C++ openCV未定义的符号\u CVT颜色,c++,xcode,opencv,C++,Xcode,Opencv,我知道类似的问题已经发布了,但我发现的解决方案对我来说根本不起作用 我使用的是XCode 4.5和openCV 2.4.3。我从源代码构建库,将编译器设置为LLVM GCC 4.2,每当我尝试使用CVTColor()时,都会收到以下错误消息: Undefined symbols for architecture x86_64: "_cvCvtColor referenced from: _main in main.o 如有任何见解,将不胜感激 在终端中,将“cd”添加到包含Open

我知道类似的问题已经发布了,但我发现的解决方案对我来说根本不起作用

我使用的是XCode 4.5和openCV 2.4.3。我从源代码构建库,将编译器设置为LLVM GCC 4.2,每当我尝试使用CVTColor()时,都会收到以下错误消息:

Undefined symbols for architecture x86_64:
  "_cvCvtColor referenced from:
    _main in main.o
如有任何见解,将不胜感激

在终端中,将“cd”添加到包含OpenCV库的目录中(或者实际上是库,当我看到这些库时,我看到其中一些是构建的),然后键入以下命令:

nm-arch x86\u 64\uuuuuuuuuuuuuuuu.a
”(填写下划线所在库的名称)

这将转储库中的所有符号。您可以退出或搜索“
cvtcolor


我的猜测是,您只为32位构建了OpenCV(在“
nm
”命令中指定“
-arch x86\u 64
”时,如果您完全没有得到符号,这将很容易看出),并且您还需要为64位(x86\u 64)构建OpenCV库

我发现了问题,我在自责。事实证明,我没有导入cvCvtColor()所在的特定库(具体来说是libopencv_imgproc)。

这是针对iPhone应用程序(在模拟器中运行)还是MacOS应用程序的?嗯……您如何构建64位的库?它必须能够与最新版本的CV兼容,因为整个库显然是64位兼容的。另外,您链接到的教程似乎是用于创建静态库的,我确实将库构建为动态库。我应该将其构建为静态库吗?谢谢这是正确的答案。你能接受你的答案是正确的吗?