如何撤销命令make install
的安装结果,或者如何卸载Linux
库library
?
问题描述 : 使用指令make install
进行package
安装,因参数设置错误或者依赖缺失安装终止等原因,需要撤销安装,或者希望卸载已经安装的库(library)
解决方法 :
方法 1 : make uninstall
- step 1 : 如果你已经删除或者改变了
build
目录,你需要重新下载source code
, -->make
-->make install
(即重新下载并重新安装) - step 2 : 运行
make uninstall
命令 :
$ cd ../build
$ sudo make uninstall
如果命令执行成功,即可成功卸载;若仍有顾虑,可参考方法 2 来确保卸载过程没有遗留文件
方法 2 : (install_manifest.txt)
文件install_manifest.txt
包含安装过程中产生的文件名称 。
首先,检查文件列表及其修改时间 :
sudo xargs -I{} stat -c "%z %n" "{}" < install_manifest.txt
可以成功执行上述命令,并且文件修改时间为安装时间或者晚于安装时间,此时,我们可以删除这些安装过程中产生的文件 :
mkdir deleted-by-uninstall
sudo xargs -I{} mv -t deleted-by-uninstall "{}" < install_manifest.txt
拓展
Linux xargs
指令 : xargs
, eXtended ARGuments. : 可以给命令传递参数,可以组合多个命令; 可将管道或标准输入数据转换成命令行参数,也可从文件输出中读取数据; 可捕获一个命令的输出,然后传递给另外一个命令。 许多命令不支持|
管道传递参数,而 xargs
具备此功能。
Reference :
[1] What's the opposite of 'make install', i.e. how do you uninstall a library in Linux?.stackoverflow