最近使用opencv中有专利的函数,需要使用 nonfree的库,所以重新编译安装opencv。
编译安装opencv的具体过程可以参考我之前的安装方法:
空卡安装设置树莓派4B并安装opencv+QT_MAUM的博客-优快云博客
因为之前已经修改过相关源码,这次想着一遍成功呢,结果又出要蛾子了。在编译到59%左右的时候提示找不到ffmpeg相关的函数,av_codec、av_stream等,这种问题其实很好解决了。
这个是因为之前安装了ffmpeg,和opencv需要的ffmpeg库版本不一致所导致的。
至于这个自己安装的库,特别是自己安装到/usr/local/lib下的库,在系统中基本没有太深的嵌入,可以直接删除,cd到安装目录,执行下面的语句(这是删除Opencv的库,删除ffmpeg的话内容比较多,可以删除名字中包含 avformat、avdevice、avcodec 、avfilter、avutil 、swresample、swscale、postproc的这些库):
sudo rm -rf libopencv*
这样就可以把辛辛苦苦编译安装上的、有问题的库给删掉,记得去到include文件夹把相应的头文件给删掉,之后再更新动态链接库即可:
sudo ldconfig
这样就完事儿了。如果随后还有可能使用这个库,那就把相关的内容移动到某个备份文件夹:
sudo mv -f libopencv* ../backupDir
卸载自己编译安装的库,不需要使用
sudo apt-get purge ×××这个命令是使用apt-get 这个指令安装的库,一般是在/usr/lib中