“make install”后如何卸载
方法#1(进行卸载)
第 1 步:如果您以任何方式删除/更改了构建目录,则只需要执行此步骤:使用与之前完全相同的过程下载和 make/make 安装。
第2步:尝试卸载。
cd $SOURCE_DIR
sudo make uninstall
如果这成功了,你就完成了。如果你偏执,你也可以尝试“方法#3”的步骤,以确保make uninstall
没有遗漏任何文件。
方法 #2 (checkinstall -- 仅适用于基于 debian 的系统)
过程概述
在基于 debian 的系统(例如 Ubuntu)中,您可以.deb
使用名为checkinstall
. 然后你安装 .deb 包(这会让你的 debian 系统意识到你的包的所有部分都已经安装了),最后卸载它让你的包管理器正确地清理你的系统。
一步步
sudo apt-get -y install checkinstall
cd $SOURCE_DIR
sudo checkinstall
此时checkinstall
会提示输入包名。输入一些描述性的内容并记下它,因为您将在一分钟内使用它。它还会提示您输入更多可以忽略的数据。如果它抱怨版本不被接受,只需输入一些合理的内容,如1.0
. 完成后,您可以安装并最终卸载:
sudo dpkg -i $PACKAGE_NAME_YOU_ENTERED
sudo dpkg -r $PACKAGE_NAME_YOU_ENTERED
方法 #3 (install_manifest.txt)
如果install_manifest.txt
源目录中存在文件,它应该包含安装创建的每个文件的文件名。
所以首先检查文件列表及其修改时间:
cd $SOURCE_DIR
sudo xargs -I{} stat -c "%z %n" "{}" < install_manifest.txt
您应该得到零错误,并且列出的文件的修改时间应该在安装时间之后或之后。如果一切正常,您可以一次性删除它们:
cd $SOURCE_DIR
mkdir deleted-by-uninstall
sudo xargs -I{} mv -t deleted-by-uninstall "{}" < install_manifest.txt
然而,用户 Merlyn Morgan-Graham 对此方法有一个严肃的注意事项,您应该牢记(在此处逐字复制):“注意可能也已由其他软件包安装的文件。只需删除这些文件 [...]打破其他包裹。” . 这就是我们创建deleted-by-uninstall
目录并将文件移动到那里而不是删除它们的原因。
这篇文章的 99% 存在于其他答案中。我刚刚收集了所有有用的(希望是)易于遵循的方法,并尝试对重要细节给予额外的关注(例如引用 xarg 参数和保留已删除文件的备份)。