在https://unix.stackexchange.com/a/141619/674
我不会只存储 makefile。虽然卸载目标可能不会(或者也许,不应该)需要任何其他东西才能成功,这不是保证。
这意味着保留原始包的副本。不过,如果有旧版本的公共档案并且您不担心它会消失,那就没有多大意义了。无论如何,您可以稍后再次下载。唯一的问题是对于自动工具的东西,你需要
./configure
先运行,如果你使用不同的选项uninstall
可能会错过一些东西——但我认为这并不是什么大问题。有时我会记录某些东西的特定配置。我在里面保留了独立的源码包
/usr/local/src
,不过只要你需要的时候能找到就无所谓了。
为什么“对于自动工具的东西,你需要./configure
先运行,如果你使用不同的选项uninstall
可能会错过一些东西”?
卸载通过configure、make 和make install 安装的应用程序需要configure 文件的原因是什么?
谢谢。
答案1
假设该包有一个--enable-foo
配置选项,使其构建其 foo 子系统并安装libfoo.a在…/lib 和一个富可执行文件位于…/bin 中。因此,您安装它并清理临时构建目录。
然后您几个月后回来,重新解压软件包 tarball 以将其卸载。您需要重新运行./configure
来重建 makefile,以便您可以执行此操作make uninstall
,如果您不使用--enable-foo
构建/安装/卸载的命令进行配置libfoo.a和富可能不包含在各自的 make 目标中。在这种情况下,make uninstall
就会错过清理工作libfoo.a和富。
这将是值得保存的配置状态来自原始安装的构建目录,因为它记录了使用的配置选项。