linux怎么配置opencv

linux怎么配置opencv,第1张

一、安装

1 安装cmake及一些依赖库

sudo apt-get install cmake

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev

libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev

2 安装opencv

从官网下载opencv并解压,cd命令进入opencv的目录

cmake .

sudo make

sudo makeinstall

二、配置

1 将opencv的库加入到路径,从而让系统可以找到

sudo gedit /etc/ld.so.conf.d/opencv.conf

末尾加入/usr/local/lib,保存退出

sudo ldconfig #使配置生效

sudo gedit /etc/bash.bashrc

末尾加入

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

export PKG_CONFIG_PATH

保存退出

sudo source /etc/bash.bashrc #使配置生效

sudo updatedb #更新database

三、测试使用

打开opencv2.4.9目录下的sample/c

#build

./build_all.sh

使用下面的一个sample进行测试

./find_obj

Finished

印象里面有一个build_all.sh脚本执行一下就可以了,这个记不太清了。。

不过编译自己写的程序是

gcc -o test.bin test.c `pkg-config --cflags -libs opencv`

g++ -o test.bin test.c `pkg-config --cflags -libs opencv`

。。。

交叉编译opencv主要参考了这篇文章:

https://blog.csdn.net/kaychangeek/article/details/80113289

一、如何配置cmake

1、where is the source code:即opencv源码路径

where to build the binaries:编译生成的库文件放在这个路径下,自己设置的,自己记住就好

2、点configure按钮,d出配置窗口,选最后一个,然后next。

3、输入自己的交叉编译器路径,第三方库路径,finish

4、等一会,cmake会出现编译选项,自行修改

我也不太清楚这里面每一个组件的具体用途,就根据网上别人给出的选项作了修改

找到BUILD_ZLIB,勾选上

找到OPENCV_GENERATE_PKGCONFIG,勾选上。这是生成.pc文件的选项

build_opencv_gapi不勾选。不去掉会编译报错

#疑问:是不是选中了witn_xxx选项,就要同时选中build_xxx选项?前面的交叉编译第三方依赖库有用吗?

修改cmake_build_type为Release

修改cmake_install_prefix为你自己的输出文件夹

点Generate,生成Makefile

二、编译

使用gedit打开build路径下的CMakeCache.txt文件,找到CMAKE_EXE_LINKER_FLAGS选项在后面加上:-lpthread -lrt。这是一个多线程链接库

make &&make install

三、配置.pc文件

成功编译的话,你会在输出路径下找到你的库文件

然后你还会在~/lib/pkgconfig下找到你的.pc文件

因为我的电脑也装了x86平台的opencv库,为了便于区分,我把这个.pc文件改成了opencv_arm.pc,然后复制进了pkgconfig的默认路径下。

四、验证

最后验证一下:在samples/CPP中找个例程编译一下:(必须加上-std=c++11,opencv必须有c++2011支持)

大功告成!!!

装这个东西一共花了我了五天时间,几乎每一步我都会遇到问题,好在有各路网友的分享我才能成功。向开源精神致敬!!!


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7189065.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-02
下一篇2023-04-02

发表评论

登录后才能评论

评论列表(0条)

    保存