-
如果在sudo make install时,在/build下产生了install_manifest.txt,那么可以回到/build目录,运行:
cd opencv/build/ sudo xargs rm < install_manifest.txt
该文件记录了安装时复制的所有文件,上述命令会把他们全部删除完,剩下空的文件夹,可以自己手动去删除,例如OpenCV,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)
运行下列命令可以删除残留在/usr/local/include/opencv4和/usr/local/share/opencv4的文件夹cd /usr/local/share/ sudo rm -rf opencv4/ cd /usr/local/include/ sudo rm -rf opencv4/
-
如果没有产生install_manifest.txt文件,或者build/文件夹被删除了,可以再install一遍,把install结果写日志里,然后对应着删除install:
sudo make install &> |tee make_install.log # 然后对应着删除install文件
这个方法比较痛苦,需要自己逐个查看文件夹位置然后删除
-
使用sudo checkinstall而不是sudo make install,checkinstall会在build目录中创建一个.deb包,然后将包安装到系统中(可加上参数,使其只产生.deb包,而不进行任何安装)。然后就可以用Debian的包工具以通常的方式管理它了,因为它是一个自定义包,deb包还可以安装在其他类似的系统上。
安装时:./configure make # 下列命令只产生.deb包,而不进行任何安装 sudo checkinstall --install=no --fstrans=yes make # 安装.deb包 sudo dpkg -i package_name.deb
卸载时:
sudo dpkg --purge package_name