本文用于自己以后再次配置vscode用的,记录一下,以免重复踩坑
由于要在vscode中用到opencv,所以在网上不断搜索,用了大半天完成了所有配置,其实前面的操作都是跟着一个大佬的文章,稳步运行就出来结果了详见https://blog.csdn.net/bryan_qaq/article/details/90246739这篇文章写的很详细。本人基本都是跟着这位大佬做的安装配置步骤,中间遇到的问题就写在下面了
其中主要遇到的问题:
问题1 在添加依赖项的时候显示:无法定位软件包libjasper-dev,就是在这一步
解决方案:用下面的代码
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt upgrade
sudo apt install libjasper1 libjasper-dev
问题2 在cmake的时候执行configure时候报错:下载失败,无法连接到服务器
解决方案:参考的博主说重新安装就可以,我试了一下并不可以,后来想到他说是服务器的问题,然后想是不是可以科学上网(fanqiang)一下,结果就解决了。
问题3 在sudo make install之后基本可以宣告结束了,但是输入命令
pkg-config opencv --modversion
会报告一些错误,并没有出现版本号
理想效果是这样的
解决方案:参考了一位大佬的做法链接在这里https://blog.csdn.net/PecoHe/article/details/97476135
如果不想看链接可以看我接下来的操作,是一样的。原因是缺失了opencv.pc这个配置信息文件,故解决方法就是添加这个文件然后将其导入到环境变量中,具体做法如下:
首先创建opencv.pc文件,这里要注意它的路径信息:
cd /usr/local/lib
sudo mkdir pkgconfig
cd pkgconfig
sudo touch opencv.pc
然后在opencv.pc中添加以下信息,注意这些信息需要与自己安装opencv时的库路径对应:
prefix=/usr/local
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/lib
Name: opencv
Description: The opencv library
Version:4.0.1
Cflags: -I${includedir}/opencv4
Libs: -L${libdir} -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core
~
保存退出,然后将文件导入到环境变量:
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
之后再尝试这个命令就可以顺利得到版本号了
pkg-config opencv --modversion
问题4 所有都装完之后我满心欢喜进vscode,结果在#include
解决方案:在网上无意间找到的方法,只需要输入这个
sudo apt-get install libopencv-dev
可以先尝试opencv自带的example,如果可以跑通就代表opencv配置完毕
自带的例子我用的是这个路径的,仅供参考,具体要看实际的绝对路径
/home/tcj/opencv/opencv-4.7.0/samples/
然后make之后再运行
./opencv_example
结果如图所示