在centos上安装python源代码的opencv

时间:2015-01-21 10:49:40

标签: python opencv centos

我安装了CentOS6.5。我安装了python 2.7.9。我是从源头构建的。使用pip安装numpy 1.9.1。

我正在尝试从源代码安装opencv 2.4.10。我使用root previleges从opencv src目录运行以下命令。

mkdir build

cd build

cmake ../ -DCMAKE_BUILD_TYPE=RELEASE \
-DCMAKE_INSTALL_PREFIX=/usr/local \
-DBUILD_EXAMPLES=ON \
-DBUILD_NEW_PYTHON_SUPPORT=ON \
-DINSTALL_PYTHON_EXAMPLES=ON \
-DPYTHON_EXECUTABLE=/usr/local/bin/python2.7 \
-DPYTHON_INCLUDE_DIR=/usr/local/include/python2.7/ \
-DPYTHON_LIBRARY=/usr/local/lib/libpython2.7.so.1.0 \
-DPYTHON_NUMPY_INCLUDE_DIR=/usr/local/lib/python2.7/site-packages/numpy/core/include/numpy \
-DPYTHON_PACKAGES_PATH=/usr/local/lib/python2.7/site-packages/ \
-DBUILD_PYTHON_SUPPORT=ON


make

我收到了以下错误。

[ 76%] Generating generated0.i
Generated 377 functions
Scanning dependencies of target opencv_python
[ 76%] Building CXX object modules/python/CMakeFiles/opencv_python.dir/src2/cv2.cpp.o
/usr/src/opencv-2.4.10/modules/python/src2/cv2.cpp:15:33: error: numpy/ndarrayobject.h: No such file or directory
/usr/src/opencv-2.4.10/modules/python/src2/cv2.cpp: In member function ‘virtual void NumpyAllocator::allocate(int, const int*, int, int*&, uchar*&, uchar*&, size_t*)’:
/usr/src/opencv-2.4.10/modules/python/src2/cv2.cpp:184: error: ‘NPY_UBYTE’ was not declared in this scope


/usr/src/opencv-2.4.10/modules/python/src2/cv2.cv.hpp:423: warning: ‘cvmat_methods’ defined but not used [-Wunused-variable]
make[2]: *** [modules/python/CMakeFiles/opencv_python.dir/src2/cv2.cpp.o] Error 1
make[1]: *** [modules/python/CMakeFiles/opencv_python.dir/all] Error 2

你能帮忙吗?

我使用" - enable-shared"构建python。旗 我注释掉第50行(MD5哈希" $ {lines}")/ usr / src / opencv- 2.4.10 / cmake / cl2cpp.cmake

1 个答案:

答案 0 :(得分:1)

-DPYTHON_NUMPY_INCLUDE_DIR=/usr/local/lib/python2.7/site-packages/numpy/core/include

删除尾部/numpy,它应该没问题。