Присоединяйтесь!
Авторизация
Raspbian    Python    OpenCV   

Установка Python 3.4 и OpenCV 3.0 на Raspbian

16 December 2014 - Автор Businka76

Решил освоить raspberry, при этом не использовать компилируемые языки, выбор невольно остановился на Python 3. Поскольку изначально планировалось задействовать OpenCV, то на текущий момент это возможно только с OpenCV 3.0 beta которая рекомендует использовать с ней Python 3.4. Ни того ни другого в репозитории нет и пришлось собирать из исходников, по пути осваивая данный процесс. Идущим по моим следам посвящается:

Установка Python 3.4

Устанавливаем пакеты необходимые для Python:

sudo apt-get install zlib1g-dev  libbz2-dev libncurses5-dev libreadline6-dev libsqlite3-dev libssl-dev libgdbm-dev liblzma-dev tk-dev

Качаем и распаковываем исходники:

wget https://www.python.org/ftp/python/3.4.2/Python-3.4.2.tgz
tar -zxvf ./Python-3.4.2.tgz
cd ./Python-3.4.2/

Более свежие исходники можно взять с оф.сайта

Готовим к компиляции

./configure --prefix=/usr/local

Компилируем

make

Ближе к концу компиляции может появится сообщение о том что каких-то пакетов не хватает: "the necessary bits to build these modules were not found:" их можно до установить если они вам нужны, после чего повторить процедуру.

Cобираем пакет

sudo make install

По правильному надо собирать при помощи checkinstall, но не получилось как ни старался. setup_tools и pip ставятся автоматически

Создаем удобные симлинки в системе:

rm /usr/bin/python3
ln -s /usr/local/bin/python3 /usr/bin/
ln -s /usr/local/bin/pip3 /usr/bin/

OpenCV необходим питоновский модуль numpy - ставим

pip3 install numpy

Устанавливаем необходимые OpenCV пакеты (поставил все что просил)

sudo apt-get install cmake git build-essential pkg-config libpng12-0 libpng12-dev libpng++-dev libpng3 libpnglite-dev \
zlib1g-dbg zlib1g zlib1g-dev pngtools libtiff4-dev libtiff4 libtiffxx0c2 libtiff-tools libeigen3-dev libjpeg8 \
libjpeg8-dev libjpeg8-dbg libjpeg-progs ffmpeg libavcodec-dev libavcodec53 libavformat53 libavformat-dev \
libgstreamer0.10-0-dbg libgstreamer0.10-0 libgstreamer0.10-dev libxine1-ffmpeg libxine-dev libxine1-bin \
libunicap2 libunicap2-dev swig libv4l-0 libv4l-dev python-numpy libpython2.7 python-dev python2.7-dev libgtk2.0-dev
Скачиваем исходникиwget https://github.com/Itseez/opencv/archive/3.0.0-beta.zip
unzip 3.0.0-beta.zip
cd opencv-3.0.0-beta

Собираем (поскольку на raspbian несколько питонов, необходимо указать какой из них где)sudo cmake   \
	-D CMAKE_BUILD_TYPE=RELEASE \
	-D CMAKE_INSTALL_PREFIX=/usr/local/ \
        -D PYTHON2_EXECUTABLE=/usr/bin/python2 \
        -D PYTHON2_INCLUDE_PATH=/usr/include/python2.7/ \
	-D PYTHON2_LIBRARIES=/usr/lib/python2.7  \
	-D PYTHON2_PACKAGES_PATH=/usr/local/lib/python2.7/site-packages/ \
	-D PYTHON2_NUMPY_INCLUDE_DIRS=/usr/local/lib/python2.7/dist-packages/numpy/core/include \
        -D PYTHON3_EXECUTABLE=/usr/local/bin/python3 \
	-D PYTHON3_INCLUDE_PATH=/usr/local/include/python3.4m/ \
	-D PYTHON3_LIBRARIES=/usr/local/lib/python3.4/ \
	-D PYTHON3_PACKAGES_PATH=/usr/local/lib/python3.4/site-packages/ \
	-D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/local/lib/python3.4/dist-packages/numpy/core/include/ .
sudo make
sudo make install

Cборка на raspberry занимает порядка 10-12 часов. checkinstall как и в случае с питоном работать отказался.

Чтобы Raspberry Camera стала стандартным V4L устройством /dev/video0, нужно выполнить: sudo modprobe bcm2835-v4l2

16 December 2014
Businka76
автор статьи

Комментариев: 0

Ваш комментарий будет первым

Отправить комментарий

Авторизуйтесь для отправки комментария

Присоединяйтесь
Новые сообщения

Новые комментарии к блогам
  • Чёт дорого

    Raspberry Pi 400
  • Как её программировать?

    Raspberry Pi Pico
  • Зря Wi-Fi не вколхозили, как они с esp32 конкурировать собрались, который и по характеристикам...

    Raspberry Pi Pico
  • "будет вылетать из материнкой платы без дополнительного прижима" Для умных - там есть...

    Raspberry Pi Compute Module 4 (CM4)
  • Это интересно. По цене как китайские клоны ардуин, а возможности и мощность намного больше....

    Raspberry Pi Pico
  • Пиши по-русски, ты в национальном домене, а не на коме.

    GPIO для чайников (часть 1)
  • Смотри ссылку в конце статьи "Руководство по программированию Pico на C/С++"

    Raspberry Pi Pico
  • Слабовато конечно, но на замену всяким ардуинам вполне себе пойдёт

    Raspberry Pi Pico
  • Как раз очевидно, что не знающие вообще никакого языка или знающие их плохо, будут искать не...

    GPIO для чайников (часть 1)