opencv--Linux源码编译形成库文件并测试

部署在嵌入式的opencv,需要进行源码编译,形成Linux可用的库文件,下面进行相关记录:

准备工作:
1.安装开发工具:

sudo apt-get install build-essential

集成gcc,g++,make等一系列开发工具,快速形成开发环境

2.安装 cmake、git、pkg-config等辅助工具:

sudo apt-get install cmake git pkg-config libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev

安装完所需工具,开始编译:

1.下载opencv源码,opencv官网网址
2.解压,Linux解压缩基本操作,不会可百度;
3.进入解压缩的目录,mkdir release,用于存放cmake出的文件;
4.cd release;
5.cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
使用ON/OFF选择安装所需模块,…表示编译当前目录上一级目录,prefix=后表示库文件及头文件存放位置
6.无报错,则release文件夹下已经形成makefile文件,make -j $(nproc),多线程编译,提高编译速度;
7.make install;编译完成,/usr/local/ 文件夹下include,lib文件夹下已经存在opencv相关头文件和库文件;

验证安装,测试:
创建任意测试文件夹,编写测试文件:
1.复制任意图片到文件夹,更改名称1.jpg;
2.测试代码:test.cpp

#include<iostream>
#include<opencv2/core.hpp>
#include<opencv2/highgui.hpp>
#include<opencv2/imgproc.hpp>
using namespace cv;
using namespace std;

int main()
{
	Mat image;
	image = imread("./1.jpg",1);
	cvNamedWindow("source picture",WINDOW_NORMAL);
	imshow("source picture",image);
	waitKey(0);
}

编译:g++ test.cpp -o test pkg-config --cflags --libs opencv
//前面安装的编译工具可以帮助寻找头文件和库文件,可以命令行执行pkg-config --cflags --libs opencv观察效果,
在这里插入图片描述
其实就是快速链接opencv头文件和库文件
3. ./test,观察到图片输出。

注意:若出现:error while loading shared libraries: libopencv_core.so.3.4: cannot open shared object file: No such file or directory
表示未将OpenCV动态库文件写入环境变量
在 /etc/ld.so.conf.d/下建立文件OpenCV.conf,写入OpenCV库文件路径如:

/usr/local/lib/x86_64-linux-gnu/

运行:sudo ldconfig完成库文件的环境变量配置。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值