在跑步的时候
./configure --prefix=/mingw
在我之前运行的库的MinGW / MSYS系统上
'./configure --prefix=/mingw && make && make install'
我遇到了此消息:
警告:已经安装了Vamp插件SDK版本。 如果安装新版本而不先删除旧版本,请担心。 (续)
这让我担心。 “ make install”的反义词是什么,即如何在Linux中卸载库? “清洁”会完成这项工作吗,还是有其他步骤涉及?
#1楼
取决于所讨论程序的makefile / configure脚本/ autofoo魔术程度,以下内容可能会解决您的问题:
make uninstall
问题是您应该在已安装版本的源代码树上执行此操作,并使用与安装时使用的配置完全相同的配置。
#2楼
make clean通常仅清除包含源代码本身的目录中的已构建文件,而很少接触任何已安装的软件。
Makefile通常不包含卸载目标-通常,您必须自己完成操作,方法是从安装文件的目录中删除文件。 例如,如果您构建了一个程序并将其安装(使用make install ) make install到/usr/local ,则需要浏览/usr/local/bin , /usr/local/libexec , /usr/local/share/man等,然后删除不需要的文件。 有时,Makefile包含uninstall目标,但并非总是如此。
当然,通常在Linux系统上,您可以使用软件包管理器来安装软件,该软件包管理器能够“自动”卸载软件。
#3楼
不幸的是,没有标准,这是从源代码安装的风险之一。 一些Makefile会包含“卸载”,因此
make uninstall
从源目录中可能有效。 否则,可能需要手动撤消make install所做的任何事情。
make clean通常只是清理源目录-删除生成/编译的文件等,可能不是您想要的。
#4楼
make clean从源代码/构建树中删除所有中间文件或输出文件。 但是,它仅影响源代码/构建树。 它不会接触文件系统的其余部分,因此不会删除以前安装的软件。
如果幸运的话,可以运行make uninstall 。 但是,这取决于图书馆的作者。 有些作者提供了uninstall目标,而另一些则没有。
如果您不走运,则必须手动将其卸载。 运行make -n install可能会有所帮助,因为它将显示该软件自行安装但实际上不会执行任何操作的步骤。 然后,您可以手动撤消这些步骤。
#5楼
如果sudo make uninstall不可用:
在基于Debian的系统中,您可以运行sudo checkinstall来制作一个.deb文件,该文件会自动安装,而不是(或在*之后)进行make install 。 然后,您可以使用系统软件包管理器将其删除(例如apt / synaptic / aptitude / dpkg )。 Checkinstall还支持创建其他类型的软件包,例如RPM。
另请参见http://community.linuxmint.com/tutorial/view/162和一些基本的checkinstall用法以及debian checkinstall软件包 。
*:如果在使用make install后阅读此书,您仍然可以按照上述说明进行操作,然后再执行dpkg -r $PACKAGE_NAME_YOU_CHOSEN 。
来源:oschina
链接:https://my.oschina.net/stackoom/blog/3168002