Ubuntu 16.04 + GTK780 + opencv 安装配置
2016-09-18 17:04
127 查看
1.opencv安装要求(opencv官网)
http://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation
GCC 4.4.x or later
CMake 2.6 or higher
Git
GTK+2.x or higher, including headers (libgtk2.0-dev)
pkg-config
Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
[optional] libtbb2 libtbb-dev
[optional] libdc1394 2.x
[optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev
2.预检
#gcc
--version
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.02) 5.4.0 20160609
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
3. 安装cmake-2.8.12.1
# sudo wget http://www.cmake.org/files/v2.8/cmake-2.8.12.1-Linux-i386.tar.gz
# tar xzvfcmake-2.8.11.tar.gz
# cd cmake-2.8.11
# ./configure; make; make install
4.安装依赖库
# sudo apt-get install build-essential
# sudo apt-get install git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
# sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
5.安装cuda
因为需要GPU,故安装CUDA
5.1 安装NVIDIA驱动
Nouveau是由第三方为NVIDIA显卡开发的一个开源3D驱动,没能得到NVIDIA的认可与支持,不过确让Linux更容易的应对各种复杂的NVIDIA显卡环境,让用户安装完系统即可进入桌面并且有不错的显示效果,故很多Linux发行版默认集成了Nouveau驱动,在遇到NVIDIA显卡时默认安装。企业版的Linux更是如此,几乎所有支持图形界面的企业Linux发行版都将Nouveau收入其中。
关闭Nouveau
#sudo gedit /etc/modprobe.d/blacklist.conf 在文件后面加入blacklist
nouveau
#mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak(无效)
#dracut -v /boot/initramfs-$(uname -r).img $(uname -r) (sudo apt-get install dracut)
下载驱动程序NVIDIA-Linux-x86_64-367.44.run
# sudo service lightdm stop 进入命令行
# sudo ./NVIDIA-Linux-x86_64-367.44.run
报错:You appear to be running an X server; please exit X ...
# ps -e | grep X
# sudo kill Xorg kill掉X进程
# sudo ./NVIDIA-Linux-x86_64-367.44.run
# sudo service lightdm start 返回图像界面
进入图像界面后报错:System program problem detected (未解决)
# nvidia-smi 检查驱动
5.2 安装CUDA
# sudo ./cuda_7.5.18_linux.run --override
# sudo gedit ~/.bashrc 修改环境变量
export PATH=$PATH:/usr/local/cuda-7.5/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
#source~/.bashrc
# sudo gedit /etc/ld.so.conf 修改动态链接
/usr/local/cuda/lib64
# sudo ldconfig
# nvcc
-V 检查CUDA
# cd /usr/local/cuda-7.5/samples
# sudo make测试CUDA
报错:unsupported GNU version! gcc versions later than 4.9 are not supported
gcc版本过高,修改CUDA配置文档,没有选择去降低gcc版本
# cd /usr/local/cuda/include/
# sudo cp host_config.h host_config.h.bak
# sudo gedit host_config.h[b] [/b]
if _GNUC_>4 || (_GNUC_ == 4 && _GNUC_MINOR_ > 9) 将两个4改为5
# cd /usr/local/cuda-7.5/samples
# sudo make 测试CUDA,通过
5.3 安装CUDNN
下载cudnn7.5-linux-x64-v5.1.tgz
[b][b]# sudo cpinclude/cudnn.h
/usr/local/cuda/include[/b][/b]
[b][b][b]# sudo cp lib64/libcudnn.* /usr/local/cuda[/b][/b]/lib64[/b]
# cd /usr/local/cuda/lib 需要对cudnn进行修改
# sudo rm -rf libcudnn.so libcudnn.so.5
# sudo ln -s libcudnn.5.1.3 libcudnn.so.5
# sudo ln -s libcudnn.so libcudnn.so
6.安装opencv2.4.13
# mkdir release
# cd release
# cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/opencv2
-D CUDA_GENERATION=Kepler .. (GTX780显卡,Kelper架构)
# make
报错
[b]error:[/b]/usr/include/string.h:652:42:error:
‘memcpy’ wasnotdeclaredin
this scope
原因g++版本太新了,兼容一下,在出现上面错误时,在CMakeLists.txt中前几行添加
[b]set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS}
-D_FORCE_INLINES")[/b]
参考:http://blog.csdn.net/Swearos/article/details/51307304
# sudo make install
set runtime path of "/usr/local/opencv2/bin/opencv_visualisation" to "/usr/local/opencv2/lib:/usr/local/cuda/lib64"
...
7. 配置环境变量(保守配置)
# sudo gedit ~/.bashrc
[b]# exportPKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv2/lib/pkgconfig[/b]
[b][b][b]# exportLD_LIBRARY_PATH[/b][/b]=$LD_LIBRARY_PATH:/usr/local/opencv2/lib[/b]
# source ~/.bashrc
# sudo /etc/ld.so.conf
#添加/usr/local/opencv2/lib
# sudo ldconfig
8.opencv测试
# cd /usr/opencv-2.4.13/samples/c
# sudo ./build_all.sh
报错 coutours.c:1:39 fatal error: opencv2/imgproc/imgproc_c.h: No such file or direction
第7步已经配置了环境变量,大费周章后
# sudo cp /usr/local/lib/pkgconfig/opencv.pc /usr/lib/pkgconfig
参考:http://blog.sina.com.cn/s/blog_77ed43e301018iuu.html
#
/usr/opencv-2.4.13/samples/c下 ./find_obj测试通过
9.opencv卸载 (未测试)
进入opencv源代码文件夹下的release(安装opencv时建立)
参考: http://blog.csdn.net/xulingqiang/article/details/52496701
# sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/share/OpenCV /usr/share/opencv /usr/share/OpenCV
/usr/local/bin/opencv* /usr/local/lib/libopencv
http://docs.opencv.org/2.4/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation
GCC 4.4.x or later
CMake 2.6 or higher
Git
GTK+2.x or higher, including headers (libgtk2.0-dev)
pkg-config
Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
[optional] libtbb2 libtbb-dev
[optional] libdc1394 2.x
[optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev
2.预检
#gcc
--version
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.02) 5.4.0 20160609
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
3. 安装cmake-2.8.12.1
# sudo wget http://www.cmake.org/files/v2.8/cmake-2.8.12.1-Linux-i386.tar.gz
# tar xzvfcmake-2.8.11.tar.gz
# cd cmake-2.8.11
# ./configure; make; make install
4.安装依赖库
# sudo apt-get install build-essential
# sudo apt-get install git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
# sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
5.安装cuda
因为需要GPU,故安装CUDA
5.1 安装NVIDIA驱动
Nouveau是由第三方为NVIDIA显卡开发的一个开源3D驱动,没能得到NVIDIA的认可与支持,不过确让Linux更容易的应对各种复杂的NVIDIA显卡环境,让用户安装完系统即可进入桌面并且有不错的显示效果,故很多Linux发行版默认集成了Nouveau驱动,在遇到NVIDIA显卡时默认安装。企业版的Linux更是如此,几乎所有支持图形界面的企业Linux发行版都将Nouveau收入其中。
关闭Nouveau
#sudo gedit /etc/modprobe.d/blacklist.conf 在文件后面加入blacklist
nouveau
#mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak(无效)
#dracut -v /boot/initramfs-$(uname -r).img $(uname -r) (sudo apt-get install dracut)
下载驱动程序NVIDIA-Linux-x86_64-367.44.run
# sudo service lightdm stop 进入命令行
# sudo ./NVIDIA-Linux-x86_64-367.44.run
报错:You appear to be running an X server; please exit X ...
# ps -e | grep X
# sudo kill Xorg kill掉X进程
# sudo ./NVIDIA-Linux-x86_64-367.44.run
# sudo service lightdm start 返回图像界面
进入图像界面后报错:System program problem detected (未解决)
# nvidia-smi 检查驱动
5.2 安装CUDA
# sudo ./cuda_7.5.18_linux.run --override
# sudo gedit ~/.bashrc 修改环境变量
export PATH=$PATH:/usr/local/cuda-7.5/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
#source~/.bashrc
# sudo gedit /etc/ld.so.conf 修改动态链接
/usr/local/cuda/lib64
# sudo ldconfig
# nvcc
-V 检查CUDA
# cd /usr/local/cuda-7.5/samples
# sudo make测试CUDA
报错:unsupported GNU version! gcc versions later than 4.9 are not supported
gcc版本过高,修改CUDA配置文档,没有选择去降低gcc版本
# cd /usr/local/cuda/include/
# sudo cp host_config.h host_config.h.bak
# sudo gedit host_config.h[b] [/b]
if _GNUC_>4 || (_GNUC_ == 4 && _GNUC_MINOR_ > 9) 将两个4改为5
# cd /usr/local/cuda-7.5/samples
# sudo make 测试CUDA,通过
5.3 安装CUDNN
下载cudnn7.5-linux-x64-v5.1.tgz
[b][b]# sudo cpinclude/cudnn.h
/usr/local/cuda/include[/b][/b]
[b][b][b]# sudo cp lib64/libcudnn.* /usr/local/cuda[/b][/b]/lib64[/b]
# cd /usr/local/cuda/lib 需要对cudnn进行修改
# sudo rm -rf libcudnn.so libcudnn.so.5
# sudo ln -s libcudnn.5.1.3 libcudnn.so.5
# sudo ln -s libcudnn.so libcudnn.so
6.安装opencv2.4.13
# mkdir release
# cd release
# cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/opencv2
-D CUDA_GENERATION=Kepler .. (GTX780显卡,Kelper架构)
# make
报错
[b]error:[/b]/usr/include/string.h:652:42:error:
‘memcpy’ wasnotdeclaredin
this scope
原因g++版本太新了,兼容一下,在出现上面错误时,在CMakeLists.txt中前几行添加
[b]set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS}
-D_FORCE_INLINES")[/b]
参考:http://blog.csdn.net/Swearos/article/details/51307304
# sudo make install
set runtime path of "/usr/local/opencv2/bin/opencv_visualisation" to "/usr/local/opencv2/lib:/usr/local/cuda/lib64"
...
7. 配置环境变量(保守配置)
# sudo gedit ~/.bashrc
[b]# exportPKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv2/lib/pkgconfig[/b]
[b][b][b]# exportLD_LIBRARY_PATH[/b][/b]=$LD_LIBRARY_PATH:/usr/local/opencv2/lib[/b]
# source ~/.bashrc
# sudo /etc/ld.so.conf
#添加/usr/local/opencv2/lib
# sudo ldconfig
8.opencv测试
# cd /usr/opencv-2.4.13/samples/c
# sudo ./build_all.sh
报错 coutours.c:1:39 fatal error: opencv2/imgproc/imgproc_c.h: No such file or direction
第7步已经配置了环境变量,大费周章后
# sudo cp /usr/local/lib/pkgconfig/opencv.pc /usr/lib/pkgconfig
参考:http://blog.sina.com.cn/s/blog_77ed43e301018iuu.html
#
/usr/opencv-2.4.13/samples/c下 ./find_obj测试通过
9.opencv卸载 (未测试)
进入opencv源代码文件夹下的release(安装opencv时建立)
参考: http://blog.csdn.net/xulingqiang/article/details/52496701
#make uninstall
#cd ..
#
sudo rm -r release
# sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/share/OpenCV /usr/share/opencv /usr/share/OpenCV
/usr/local/bin/opencv* /usr/local/lib/libopencv
相关文章推荐
- Ubuntu16.04 GTK780 TensorFlow安装
- Caffe + Ubuntu 16.04 + GTK780 + GIGABYTE-uefi DualBIOS 配置
- Tensorflow + Ubuntu 16.04 + GTK780 + GIGABYTE-uefi DualBIOS 配置
- 初始设置ubuntu 16.04 Vps部署rails
- ubuntu16.04 编译安装kubernetes1.6.1
- Ubuntu16.04挂载windows的NTFS文件系统时错误的解决方法
- ubuntu16.04 实现mysql 主从复制读写分离
- ubuntu16.04安装ibus中文输入法
- Ubuntu 16.04 编译全志6.0Android源码
- Ubuntu16.04安装Redis
- Ubuntu 16.04 LTS国内快速更新源
- 在Ubuntu16.04上安装Emacs
- Ubuntu16.04完全卸载Mysql 5.7
- ubuntu16.04安装numba
- Ubuntu 16.04安装完成后获取root权限基本步骤(点击桌面无反应)
- VirtualBox下安装ubuntu server 16.04
- Ubuntu 16.04 安装 Apache, MySQL, PHP7
- Ubuntu 16.04安装OneinStack以及配置java开发环境
- ubuntu 16.04 上安装OpenStack Mitaka (all-in-one):Neutron 安装与配置
- mac制作ubuntu 16.04 启动盘