2015-10-12 3 views
2

Я изо всех сил пытаюсь установить OpenCV 3.0.0 с Python3.4.3 и виртуальным env с помощью pyenv. Я на Ubuntu 14.04.Установить OpenCV3.0 с помощью python 3.4.3 в виртуальной среде (pyenv)

Я пробовал много вещей, используя различные источники информации: http://www.pyimagesearch.com/2015/07/20/install-opencv-3-0-and-python-3-4-on-ubuntu/ http://www.pyimagesearch.com/2015/06/29/install-opencv-3-0-and-python-3-4-on-osx/ Running OpenCV from a Python virtualenv How to install ipython qtconsole with pyenv (Python version 3.4.2)

Твердая часть для меня было связать с правильным питона от pyenv. У меня есть 3.4.3, установленный в pyenv с общими библиотеками (env PYTHON_CONFIGURE_OPTS = "- enable-shared" pyenv install 3.4.3) и virtualenv с именем "dev" с установленным и работающим numpy.

Моя команда CMake выглядит следующим образом:

PREFIX_MAIN=`pyenv virtualenv-prefix` 
PREFIX=`pyenv prefix` 

cmake -D CMAKE_BUILD_TYPE=RELEASE \ 
    -D CMAKE_INSTALL_PREFIX="$PREFIX" \ 
    -D PYTHON3_LIBRARY="$PREFIX_MAIN"/lib/libpython3.4m.so \ 
    -D PYTHON3_INCLUDE_DIRS="$PREFIX_MAIN"/include/python3.4m \ 
    -D PYTHON3_EXECUTABLE="$PREFIX"/bin/python3.4 \ 
    -D PYTHON3_PACKAGES_PATH="$PREFIX"/lib/python3.4/site-packages/ \ 
    -D PYTHON3_NUMPY_INCLUDE_DIRS="$PREFIX"/lib/python3.4/site-packages/numpy/core/include \ 
    -D INSTALL_C_EXAMPLES=ON \ 
    -D INSTALL_PYTHON_EXAMPLES=ON \ 
    -D BUILD_EXAMPLES=ON \ 
    -D BUILD_opencv_python3=ON \ 
    -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules .. 

Но CMake по-прежнему не хочет найти Python 3 Libraires (см выход CMake ниже):

-- Python 2: 
--  Interpreter:     /home/group/.pyenv/shims/python2.7 (ver 2.7.6) 
-- 
-- Python 3: 
--  Interpreter:     /home/group/.pyenv/versions/dev/bin/python3.4 (ver 3.4.3) 
--  Libraries:     NO 
--  numpy:      /home/group/.pyenv/versions/dev/lib/python3.4/site-packages/numpy/core/include (ver 1.10.0.post2) 
--  packages path:    /home/group/.pyenv/versions/dev/lib/python3.4/site-packages 
-- 
-- Python (for build):   /home/group/.pyenv/shims/python2.7 

Кроме того, кажется, что хочет используйте «/home/group/.pyenv/shims/python2.7» для сборки. Я не думаю, что это проблема.

Исследуя CMake Ouput я нашел следующее:

-- Found PythonInterp: /home/group/.pyenv/versions/dev/bin/python3.4 (found suitable version "3.4.3", minimum required is "3.4") 
-- Could NOT find PythonLibs: Found unsuitable version "3.4.0", but required is exact version "3.4.3" (found /home/group/.pyenv/versions/3.4.3/lib/libpython3.4m.so) 

кажется libpython3.4m.so является версия 3.4.0 .. хотя я явно установлен 3.4.3 ... Может ли это быть проблема? Как я могу получить правильные PythonLibs?

У меня очень мало опыта работы с этими вещами, и я откровенно потерял здесь ...

EDIT: Я пытался компилировать с питона версии 3.4.0 на моем pyenv (ENV PYTHON_CONFIGURE_OPTS = "- разрешающим общий «pyenv install 3.4.0»), и он работал с помощью команд cmake выше. Либо opencv хочет явно 3.4.0, либо я не понимаю, как общая библиотека, установленная для 3.4.3, на самом деле рассматривается как 3.4.0 ...

EDIT: та же проблема с python 2.7.10 под pyenv, вы должны использование 2.7.6 ...

-- Found PythonInterp: /home/group/.pyenv/versions/cv2/bin/python2.7 (found suitable version "2.7.10", minimum required is "2.7") 
-- Could NOT find PythonLibs: Found unsuitable version "2.7.6", but required is exact version "2.7.10" (found /home/group/.pyenv/versions/2.7.10/lib/libpython2.7.so) 

ответ

0

Я решил эту проблему, установив новую версию cmake. Я использую Ubuntu 14.04, и кажется, что версия cmake, поставляемая с этим Ubuntu, не понимает более новые версии python.

+0

Я обновил cmake до 3.2.2 (http://askubuntu.com/questions/610291/how-to-install-cmake-3-2-on-ubuntu-14-04), но я все равно получаю '' ' Не удалось найти PythonLibs: найти неподходящую версию «2.7.6», но требуется точная версия «2.7.11» '' 'при запуске cmake для opencv 3.1. Любые другие идеи? – visoft

0

Хорошо, решено для меня тоже!

У меня есть Ubuntu 14.04 LTS, anaconda2, и я последовал за: http://www.pyimagesearch.com/2015/06/22/install-opencv-3-0-and-python-2-7-on-ubuntu (без папки вно)

Я постоянно попал в "неподходящей версии" проблемы. То, что для меня решило, - понизить python до точной версии моего python2.7-dev, то есть 2.7.6.

Конечно, в моей анаконды среде:

conda install python=2.7.6

сейчас, я не знаю, как обновить python2.7-DEV библиотеку 2.7.11 (и в этот момент я m afarid спросить;))

Возможно, модернизация cmake до 3.2.2 также помог, но сам по себе не решил проблему.

Надеюсь, это поможет!

p.s. добавьте комментарии, как легко и безопасно обновить python2.7-dev, если вы знаете, как это сделать.

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