在Mac OS X上编译OpenCV Snow Leopard会收到错误:“电影”没有命名类型

时间:2010-03-16 13:46:50

标签: macos opencv

当我尝试在Mac OS X Snow Leopard上编译OpenCV时,我收到以下错误:

  

highgui / cvcap_qt.cpp:76:错误:'电影'没有命名类型

有这样的结构:

/// Movie state structure for QuickTime movies                                                                  
typedef struct CvCapture_QT_Movie                                                                               
{                                                                                                               
  Movie      myMovie;   // movie handle                                                          
  GWorldPtr  myGWorld;  // we render into an offscreen GWorld       
  ...
}  

但我不知道这种类型的定义。包括QuickTime标头:

// Mac OS includes                                                                                              
#include <Carbon/Carbon.h>                                                                                      
#include <CoreFoundation/CoreFoundation.h>                                                                      
#include <QuickTime/QuickTime.h>

构建它需要做什么?

4 个答案:

答案 0 :(得分:0)

作为一种快速解决方法,您可以从1.2版本中获取预构建的通用框架:http://www.ient.rwth-aachen.de/cms/software/opencv/

答案 1 :(得分:0)

传统的QuickTime框架没有转换为64位,因此您需要确保将其编译为32位。

答案 2 :(得分:0)

您好我在雪豹10.6.2上遇到了同样的问题。所以我在没有启用quicktime的情况下构建了库。在没有启用quicktime的情况下,一定要解决你正在做的事情吗?

要在不使用quicktime的情况下构建库,请完全按照第2节(使用新的CMake构建系统从源代码构建)而不在

中启用额外选项

http://opencv.willowgarage.com/wiki/Mac_OS_X_OpenCV_Port

希望这有帮助。

答案 3 :(得分:0)

我终于在MacOSX 10.6上编译了OpenCV,这可能解决了这个问题......

首先,从http://opencv.willowgarage.com/wiki/Mac_OS_X_OpenCV_Port开始,通过发出

在i386模式下编译
svn co https://code.ros.org/svn/opencv/trunk/opencv
cd opencv # the directory containing INSTALL, CMakeLists.txt etc.
mkdir build
cd build
cmake -D CMAKE_OSX_ARCHITECTURES=i386 -D CMAKE_C/CXX_FLAGS=-m32 -D WITH_FFMPEG=OFF -D BUILD_EXAMPLES=ON -D BUILD_LATEX_DOCS=ON ..
make -j2
sudo make install

最终,我不得不重建一些端口:

sudo port install ilmbase +universal
port provides /opt/local/lib/libIlmImf.dylib
sudo port install openexr +universal

并重新编译openCV

然后我可以运行python示例

cd ../samples/python/
python camera.py

facedetect没有错误(和网络摄像头一起工作)。