之前尝试在TX2上安装opencv3.2,按照网上的教程尝试了各种方式,最终都没有安装成功,最后按照学长教的方法成功安装了。具体过程如下:
1.安装准备
在安装opencv3.2.0之前需要先安装一些依赖包,执行下面三条命令:
#Install build tools
$ sudo apt-get install build-essential cmake git
#Install OpenCV dependencies
$ sudo apt-get install pkg-config libgtk2.0-dev
#Install ssl for https, v4l for video
$ sudo apt-get install libssl-dev libv4l-dev v4l-utils
这里第三条可能会报错(我一共安装了四次,三次在虚拟机上安装的,一次在TX2上安装的,第一次报错了后面三次都没有报错),如果报错的是话执行以下sudo apt-get update就可以了。另外如果update不行的话,可以使用 :
$ sudo aptitude install libssl-dev libv4l-dev v4l-utils
选择降级方案进行安装。不过这里我没有试过,因为每次都成功了。
2.下载安装包并确认安装包的存在
$ git clone https://github.com/opencv/opencv.git
$ cd opencv/
$ git checkout tags/3.2.0
3.执行安装
$ cd opencv/
$ mkdir build
$ cd build/
$ cmake \
-DCMAKE_BUILD_TYPE=RELEASE \
-DCMAKE_INSTALL_PREFIX=/usr/local \
\
-DWITH_CUDA=OFF \
\
-DBUILD_DOCS=OFF \
-DBUILD_EXAMPLES=OFF \
-DBUILD_TESTS=OFF \
-DBUILD_PERF_TESTS=OFF \
..
注意这里从cmake开始后面一共十行每行后面都有一个“\”
注意这里执行cmake的时候可能会报错,这时候执行下面语句:
#If CMake hangs during "ICV: Downloading ippicv_linux_20151201.tgz..."
$ ICV_PATH=../3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e/ippicv_linux_20151201.tgz &&\ICV_URL=https://github.com/opencv/opencv_3rdparty/raw/ippicv/master_20151201/ippicv/ippicv_linux_20151201.tgz && \rm -f $ICV_PATH && wget $ICV_URL && mv ippicv_linux_20151201.tgz $ICV_PATH
不过其实我没有执行这个语句,执行这个语句的主要原因是要在这里新建一个文件夹并添加一个文件进去。其实还有各种方法也就是我现在使用的就是在执行cmake之前手动新建该文件夹并添加该文件进去之后再执行cmake就可以了。进入opencv文件夹,按照上面的路径找:PATH=…/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e/ippicv_linux_20151201.tgz。通常只能找到…/3rdparty/ippicv这里,在ippicv文件夹下是没有downloads/linux-808b791a6eac9ed78d32a7666804320e/这个路径的,需要自己手动建,建完之后下载也好去哪里拷也好把“ippicv_linux_20151201.tgz”文件放进去就可以了。
执行完cmake如果没有问题,则继续执行下面语句:
$ make -j $(nproc --all)#后面的“ $(nproc --all)”可以不执行
$ sudo make install
这里make -j需要一定的时间而且在执行的时候虚拟机会变的非常的卡,最好别执行别的任务,在TX2上执行则相对快的多。
如果没有问题的话基本到这里就安装成功了。