2015-10-21 3 views

ответ

2

Установить питона с общей поддержкой библиотеки через pyenv:

env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 3.5.0 

Создайте новый virtualenv имени OpenCV

pyenv virtualenv 3.5.0 opencv 

Активируйте virtualenv и установить Numpy

pyenv activate opencv 
pyenv rehash 
pip install numpy 

Clone 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 

Run 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 

источник: в основном пюре эти две направляющие вместе http://www.pyimagesearch.com/2015/06/29/install-opencv-3-0-and-python-3-4-on-osx/ https://stackoverflow.com/a/24112175/1591757 http://answers.opencv.org/question/4134/cmake-install_name_tool-absolute-path-for-library-on-mac-osx/

+0

Мне нужно было добавьте '-D BUILD_SHARED_LIBS = OFF', потому что двоичный файл' cv2.so', который он сделал, не смог найти мои dylib (?), и я также следил за обновлением на вашем первом сайте, заявив, что OpenCV 3.1.0 сломан, если вы не переключитесь на '-D INSTALL_C_EXAMPLES = OFF' (не потрудился попробовать с ним ON) –

+0

Я получил эту ошибку при запуске' make-j8': 'fatal error: 'opencv2/core/hal/intrin.hpp' file not found' , Любая идея, как это решить? – sooon

+0

@NickT Спасибо, я обновил ответ для 3.1.0. Не уверен, что сделка с BUILD_SHARED_LIBS. – Wesley

Смежные вопросы