请问从源码编译的Linux程序如何卸载?

2013-08-16 10:36:11 +08:00
 Sdhjt
当使用make install后,编译好的程序会拷贝到Linux各个相关目录下,比较分散,而且大部分源码并不提供make uninstall,请问有什么方法能够卸载?
4286 次点击
所在节点    问与答
11 条回复
alexrezit
2013-08-16 10:42:21 +08:00
/usr/bin
wupher
2013-08-16 10:44:59 +08:00
感觉要删干净只怕要你自己写make uninstall了。
Sdhjt
2013-08-16 11:05:59 +08:00
@alexrezit 不只是这个目录,程序、文档、脚本都分散在Linux各个相关的目录。比如文档可能拷贝到/usr/share/doc/,库文件拷贝到/usr/lib,还有喜欢把脚本拷贝到/etc下的。这样删除起来比较麻烦。

@wupher 自己写啊。。。好吧,能用apt-get我就不从源码弄了。
hadoop
2013-08-16 11:13:50 +08:00
我一般configure时候加参数 --prefix=/opt/xxxx 删的时候直接把这个目录删掉就行
alexrezit
2013-08-16 11:33:42 +08:00
@Sdhjt
其他的就算了. 我不喜欢删配置什么的, 这样以后如果重装还要重新配.
skydiver
2013-08-16 11:40:19 +08:00
先打包成.pkg.tar.xz然后再用pacman安装。
Sdhjt
2013-08-16 11:50:23 +08:00
@alexrezit 强迫症伤不起啊,呵呵

@hadoop 请问这个方法可以保证所有的文件都装在/opt/xxxx下吗?不会还有部分东西拷贝到/usr/bin等目录下吧?如果不拷贝到/usr/bin,那是不是需要自己在/usr/bin下建立软链接才能全局使用呢?

@skydiver 我去搜一下这个方法,谢谢
hadoop
2013-08-16 12:26:51 +08:00
@Sdhjt --prefix应该是所有的文件都在这个目录下。然后在 .bashrc的PATH变量里手工加上该软件的bin目录 /opt/xxx/bin ,这样就不用建立软连接了
9hills
2013-08-16 12:31:13 +08:00
手写make uninstall,,其实很简单的,把Makefile看下。。


另外为啥自己编译呢,
xdeng
2013-08-16 12:35:18 +08:00
看安装 反过来执行就OK了
Sdhjt
2013-08-16 13:42:59 +08:00
@hadoop 嗯嗯,我觉得这个方法可以治好我,谢谢。

@9hills 简单的Makefile我会看一下,复杂的我表示很头疼。
有些软件Ubuntu仓库里没有或者太旧,身不由己啊,呵呵。


感谢已发送~~~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/79265

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX