编译安装OpenCV到/usr/local目录,所有文件将被复制到以下位置:
/usr/local/bin - executable files
/usr/local/lib - libraries (.so)
/usr/local/cmake/opencv4 - cmake package
/usr/local/include/opencv4 - headers
/usr/local/share/opencv4 - other files (e.g. trained cascades in XML format)
-
首先尝试进入build目录,运行:
cd opencv/build/ sudo make uninstall
如若行不通,继续看下面的步骤
-
如果在sudo make install时,在/build下产生了install_manifest.txt,那么可以回到/build目录,运行:
cd opencv/build/ sudo xargs rm < install_manifest.txt
该文件记录了安装时复制的所有文件,上述命令会把他们全部删除完,剩下空的文件夹,可以自己手动去删除。对于OpenCV,运行下列命令可以删除残留的文件夹
cd /usr/local/share/ sudo rm -rf opencv4/ cd /usr/local/include/ sudo rm -rf opencv4/ cd /usr/lib/python3/dist-packages/ sudo rm -rf cv2/
-
如果没有产生install_manifest.txt文件,或者build文件夹被删除了,可以再install一遍,把install结果写日志里,然后对应着删除install:
sudo make install &> |tee make_install.log # 然后对应着删除install文件
这个方法比较痛苦,需要自己逐个查看文件夹位置然后删除
也可以在安装时,使用:make -n install
能查看安装软件的步骤,然后尝试手动逆转这些步骤,同样比较痛苦。
-
暴力法:使用Linux find命令,找到所有的OpenCV库,这可能会花一些时间
sudo find / -name "*opencv*" -exec rm -i {} \
然后系统会提示你删除这些文件,请万分小心,因为这是手动删除
-
试验性的编译安装方法(OpenCV 测试失败):使用sudo checkinstall而不是sudo make install,checkinstall会在build目录中创建一个.deb包,然后将包安装到系统中(可加上参数,使其只产生.deb包,而不进行任何安装)。然后就可以用Debian的包工具以通常的方式管理它了,因为它是一个自定义包,deb包还可以安装在其他类似的系统上。
安装时:./configure make # 需要先安装checkinstall sudo apt install checkinstall # 下列命令将在build目录下自动产生.deb包,而不进行任何install # 想进行一些定制可以把--default去掉 sudo checkinstall --default --install=no --fstrans=yes make # 安装.deb包 sudo dpkg -i package_name.deb
卸载时:
sudo dpkg --purge package_name
列出包的信息,查看包是否被卸载:
dpkg -l '*package_name*'