linux下源码编译的GCC卸载

linux环境下安装应用可以通过yum命令(Centos版本)或者apt命令(Ubuntu版本),不过也可以通过编译源码的方式安装。但部分应用通过这种方式安装之后,卸载是比较麻烦的,也没有make uninstall提供(没错说的就是GCC),需要手动删除安装的每个文件。

如果在编译时,通过./configure --prefix=XXXX指定了安装目录的话倒是比较简单,直接删除那一整个目录即可(前提那个目录是你自己新建的,千万别对系统目录下手)。而对于现在正在看这篇博客的你来说,估计是没有指定直接安装在默认目录/usr/local下了。

手动一个个删除文件是不太现实的,不过stackoverflow上的大佬给了一个机智的解决方案(原文):

1.重新编译源码,但这次需要加上指定目录,比如使用临时目录/tmp/gccinstall,那就写做./configure --prefix=/tmp/gccinst。如果使用了其他路径,那就将下文提到的路径全部替换为你使用的路径。

2.通过遍历这个临时目录下的文件,删除对应在/usr/local下的文件。

3.遍历临时目录下的目录,并删除对应的空目录。

第2步对应命令如下所示:(将文件路径中/tmp/gccinst的前缀统一删除后,得到的就是默认的安装路径)

find /tmp/gccinst -type f | sed -e s,/tmp/gccinst,, | (while read F; do rm -f "$F"; done)

第3步对应命令如下所示:

find /tmp/gccinst -depth -type d -not -empty | sed -e s,/tmp/gccinst,, | (while read F; do rmdir -p --ignore-fail-on-non-empty "$F"; done)

两个命令执行完之后,默认路径下安装的文件和目录就删除完毕,之后将临时目录也删除,整个卸载流程就算是完成了。

另外提一句,想通过源码编译来安装gcc,系统里至少要已经安装过某一版本的gcc,这里可以先用yum/apt直接安装,然后再进行其他版本的gcc源码编译。只要将编译产生的gcc/g++文件拷贝至/usr/local或者其他目录下,编译的时候指定这几个编译器即可。

 

 

 

 

 

 

 

 

 

 

 

 

 

你问我为什么懂这个?当然是布置环境又踩坑了

 

 

  • 15
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值