我花了一些时间来弄清楚这一点,所以我想我会把它写下来。
答案 0 :(得分:5)
通过pyenv安装带有共享库支持的python:
env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 3.5.0
创建一个名为opencv的新virtualenv
pyenv virtualenv 3.5.0 opencv
激活virtualenv并安装numpy
pyenv activate opencv
pyenv rehash
pip install numpy
克隆opencv和opencv_contrib并将其放在〜/
中cd ~
git clone https://github.com/Itseez/opencv.git
cd opencv
git checkout 3.1.0
cd ~
git clone https://github.com/Itseez/opencv_contrib
cd opencv_contrib
git checkout 3.1.0
cd ~/opencv
mkdir build
cd build
运行CMake并安装
PREFIX_MAIN=`pyenv virtualenv-prefix`
PREFIX=`pyenv prefix`
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX="$PREFIX" \
-D PYTHON3_EXECUTABLE="$PREFIX"/bin/python3.5 \
-D PYTHON3_PACKAGES_PATH="$PREFIX"/lib/python3.5/site-packages \
-D PYTHON3_LIBRARY="$PREFIX_MAIN"/lib/libpython3.5m.dylib \
-D PYTHON3_INCLUDE_DIR="$PREFIX_MAIN"/include/python3.5m \
-D PYTHON3_NUMPY_INCLUDE_DIRS="$PREFIX"/lib/python3.5/site-packages/numpy/core/include \
-D INSTALL_C_EXAMPLES=OFF \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D BUILD_EXAMPLES=ON \
-D BUILD_opencv_python3=ON \
-D INSTALL_NAME_DIR=${CMAKE_INSTALL_PREFIX}/lib \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules ..
make -j8
make install
注意:如果您使用的是python 3.5.2,则需要更改
PYTHON3_EXECUTABLE="$PREFIX"/bin/python3
PYTHON3_LIBRARY="$PREFIX_MAIN"/lib/libpython3.5m.a
来源:基本上将这些指南混合在一起: