如果是更新的版本的opencv,可以先到dockerhub上找找是否有可用的镜像
-
docker pull ubuntu:16.04
-
docker images
-
docker run -t -i ubuntu:16.04 /bin/bash (创建、启动、进入容器中)
-
mv /etc/apt/sources.list /etc/apt/sources.list.bak
-
apt-get update
-
apt install vim unzip
-
vim /etc/apt/sources.list (注意:apt源要与ubuntu版本对应)
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse -
apt-get update
-
apt-get install build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libavcodec-dev libavformat-dev libswscale-dev libjpeg-dev libpng-dev wget libcanberra-gtk-module gcc-arm-linux-gnueabihf g+±arm-linux-gnueabihf
-
cd home
-
wget https://github.com/opencv/opencv/archive/2.4.11.tar.gz
也可以在宿主机上先下载,再拷贝到容器中去:
docker cp ~/ubuntu备份/software/opencv-2.4.11.zip 1c55b98ab9ca:/home/ (1c55b98ab9ca为容器id)
-
unzip opencv-2.4.11.zip
-
cd opencv-2.4.11
-
mkdir release && cd release
-
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/opencv2.4.11 …
-
make -j$(nproc)
-
make install
-
vim /etc/ld.so.conf.d/opencv.conf
添加:
/usr/local/opencv2.4.11/lib
-
ldconfig
-
vim ~/.bashrc
添加:
export PKG_CONFIG_PATH="/usr/local/opencv2.4.11/lib/pkgconfig"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/opencv2.4.11/lib" -
source ~/.bashrc
-
pkg-config --modversion opencv (查看opencv版本)
-
pkg-config --cflags --libs opencv (查看opencv安装库和包含路径)
在ubuntu上安装opencv的方法也同上
ubuntu上安装多个版本opencv时,切换opencv的方法
-
sudo vim /etc/ld.so.conf.d/opencv.conf
添加:
/usr/local/opencv2.4.11/lib
-
sudo ldconfig
-
vim ~/.bashrc
添加:
export PKG_CONFIG_PATH="/usr/local/opencv2.4.11/lib/pkgconfig"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/opencv2.4.11/lib" -
source ~/.bashrc
-
pkg-config --modversion opencv (查看opencv版本)
-
pkg-config --cflags --libs opencv (查看opencv安装库和包含路径)