(2024)Ubuntu源码安装多个版本的opencv并切换使用

发布于:2024-04-04 ⋅ 阅读:(186) ⋅ 点赞:(0)

本人工作会用到x86_64的opencv和aarch64的opencv,所以写下来备忘自用

一、源码编译安装

依赖库安装:

sudo apt-get install build-essential libgtk2.0-dev libgtk-3-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev

opencv官网:Releases - OpenCV

在opencv文件夹内进行如下操作。

mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/opencv_3.4.16 ..
make -j8      # 8代表开8个线程去处理,可以设置为 2,4,6等
sudo make install

我把安装路径设置为“/usr/local/opencv_3.4.16”,同时也推荐各位自定义安装路径,多版本的情况下比较好分类。如果不指定安装路径,则默认各部分分别安装在/usr/local/目录的includebinlib3个文件夹下。

我演示的是3.4.16版本的opencv,opencv4.0以上版本默认不使用pkg-config,需要在cmake命令中增加一条代码来手动开启(4.0以下的加了也没关系,因为它默认就是开的)

-D OPENCV_GENERATE_PKGCONFIG=YES

同理可以安装其他版本,或者使用交叉编译工具安装其他格式的opencv 


二、环境配置及切换版本

sudo gedit /etc/ld.so.conf

里面加上 /usr/local,后面它就会去这个目录下找库文件

sudo ldconfig   # 保存配置

接下来这个是切换opencv版本的关键

sudo gedit /etc/bash.bashrc

在文件的末尾,加上一下三行

export PKG_CONFIG_PATH=/usr/local/opencv_3.4.16/lib/pkgconfig #配置文件
export LD_LIBRARY_PATH=/usr/local/opencv_3.4.16/lib           #库文件
export OpenCV_DIR=/usr/local/opencv_3.4.16                    #整个opencv文件

其中opencv_3.4.16这个是我上面安装的路径,你们根据自己的自行调整,有多个版本的时候,直接套用这三行,改后面的安装路径就好了,比如下图,我目前就是在用3.4.0,然后把另外一个注释掉了。

保存配置

source /etc/bash.bashrc

查看opencv版本

pkg-config opencv --modversion

如果你是在idea里面,执行完上述操作后发现版本没有切换,请重启一下idea


有问题欢迎交流


网站公告

今日签到

点亮在社区的每一天
去签到