安装OpenCV 2.4.3 Mac OSX链接CXX时出错

时间:2013-04-06 05:31:34

标签: macos opencv linker install

我正在尝试使用MacPort在Mac OSX 10.7.5上安装OpenCV 2.4.3。我通过自制软件安装了opencv 2.4.4。但是当我尝试链接库时,我在通过qmake(Qt)编译程序时遇到错误:symbols not found architecture _x86-64。所以现在我试图通过MacPort安装opencv 2.4.3但是我一直收到以下错误:

Linking CXX shared library ../../lib/libopencv_highgui.dylib
ld: library not found for -lmp3lame
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [lib/libopencv_highgui.2.4.3.dylib] Error 1
make[1]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/all] Error 2
make: *** [all] Error 2

非常感谢任何帮助。

3 个答案:

答案 0 :(得分:1)

  • 使用自制软件安装opencv时,您可能应该在makefile中添加其他搜索路径(请注意,必须安装opencv而不使用--32位标志)。您也可以尝试使用flag --with-qt安装它(请参阅brew info opencv)。另请查看here - 可能是您的情况。
  • 对于通过macports安装期间的错误:首先安装所有依赖项。在你的情况下可能是sudo port install lame
  • 您也可以使用install guidethis(OS X 10.7)或this(OS X 10.8)教程自行安装
  • 查看本页右栏中的相关问题 - 它们也很有帮助。

答案 1 :(得分:1)

您的链接器告诉您:

  1. Qt未安装在您的计算机上(或至少在shell不知道的位置);

  2. 您的系统上未安装
  3. lame(以及相关的库)。如果是,则它位于/opt/目录中(根据macports标准),默认情况下不在搜索路径中。您必须修改.bashrc.profile文件才能添加。

  4. 为了在MacOS上安装OpenCV,我肯定会建议使用源代码编译(在github上)或从homebrew安装。 在第一种情况下,您控制传递给cmake的每个选项以适合您的系统,而在第二种情况下,您有一个更具反应性的社区(根据我的经验)来解决安装问题并坚持使用最新版本。

答案 2 :(得分:1)

我格式化了硬盘,因此删除了所有内容。我重新下载了Qt Creater及其相应的mac库,并通过MacPorts安装了OpenCV。一切顺利,我现在在Qt上使用OpenCV。我想我第一次可能做错了。感谢所有试过帮助我的人。我感谢你的时间和努力。