怎么卸载源码编译安装的软件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么卸载源码编译安装的软件相关的知识,希望对你有一定的参考价值。

第一,看大家安装软件的时候有没有使用--prefix这个命令,如果有那就把你指定的文件给删除了就行了,
第二,如果没有用这个信念指定就麻烦一点了,那就进入到软件解压后的目录,执行sudo make uninstall看能否成功,
第三,如果不行,那就进入用 editor 查看 makefile 文件 看看里面卸载的命令是什么如果该源码包没有提供
此类方法删除 就只能手动删除
第四,手动删除最无奈的办法能不能搞干净也只能看运气了,使用whereis xxx 找到软件安装目录,rm -rf 把
这些目录都删除,应该能删除干净,如whereis python,例子如下:
whereis python
python: /usr/bin/python2.6-config /usr/bin/python2.6 /usr/bin/python /usr/lib/python2.6 /usr/lib64/python2.6 /usr/local/bin/python3.3m-config /usr/local/bin/python3.3m /usr/local/bin/python3.3 /usr/local/bin/python3.3-config /usr/local/lib/python3.3 /usr/include/python2.6 /usr/share/man/man1/python.1.gz
rm -rf /usr/bin/python2.6-config
rm -rf /usr/bin/python2.6
rm -rf /usr/bin/python
rm -rf /usr/lib/python2.6
rm -rf /usr/lib64/python2.6
...................等等,,,
好了,文法就这些吧,如果大家有更好的方法可以评论补充,禁止吐糟,加水。
参考技术A 在Windows下安装软件时,只需用鼠标双击软件的安装程序,或者用Zip等解压缩软件解压缩即可安装。在Linux下安装软件对初学者来说,难度高于Windows下软件安装。下面我就详细讲解Linux下如何安装软件。
先来看看Linux软件扩展名。软件后缀为.rpm最初是Red Hat
Linux提供的一种包封装格式,现在许多Linux发行版本都使用;后缀为.deb是Debain
Linux提供的一种包封装格式;后缀为.、、或.tgz是使用Unix系统打包工具tar打包的;后缀为.bin的一般是一些商业软件。通过扩展名可以了解软件格式,进而了解软件安装。
RPM格式软件包的安装

1.简介
几乎所有的Linux发行版本都使用某种形式的软件包管理安装、更新和卸载软件。与直接从源代码安装相比,软件包管理易于安装和卸载;易于更新已安装的软件包;易于保护配置文件;易于跟踪已安装文件。

RPM全称是Red Hat Package Manager(Red Hat包管理器)。RPM本质上就是一个包,包含可以立即在特定机器体系结构上安装和运行的Linux软件。RPM示意图见图1。

大多数Linux RPM软件包的命名有一定的规律,它遵循名称-版本-修正版-类型- 。

2.安装RPM包软件
# rpm -ivh

RPM命令主要参数:

-i 安装软件。
-t 测试安装,不是真的安装。
-p 显示安装进度。
-f 忽略任何错误。
-U 升级安装。
-v 检测套件是否正确安装。

这些参数可以同时采用。更多的内容可以参考RPM的命令帮助。

3.卸载软件
# rpm -e 软件名

需要说明的是,上面代码中使用的是软件名,而不是软件包名。例如,要卸载software-1.2.这个包时,应执行:
#rpm -e software

4.强行卸载RPM包
有时除去一个RPM是不行的,尤其是系统上有别的程序依赖于它的时候。如果执行命令会显示如下错误信息:

## rpm -e xsnow
error: removing these packages would break dependencies:
/usr/X11R6/bin/xsnow is needed by

在这种情况下,可以用--force选项重新安装xsnow:

# rpm -ivh --force xsnow-1.41
这里推荐使用工具软件Kleandisk,用它可以安全彻底清理掉不再使用的RPM包。

5.安装.类型的文件
目前RPM有两种模式,一种是已经过编码的(),一种是未经编码的()。
rpm --rebuild Filename.

这时系统会建立一个文件,在/usr/src/redflag/RPMS/子目录下,一般是i386,具体情况和Linux发行版本有关。然后执行下面代码即可:
rpm -ivh /usr/src/regflag/RPMS/i386/

使用deb打包的软件安装

deb是Debian Linux提供的一个包管理器,它与RPM十分类似。但由于RPM出现得早,并且应用广泛,所以在各种版本的Linux中都常见到,而Debian的包管理器dpkg只出现在Debina Linux中。它的优点是不用被严格的依赖性检查所困扰,缺点是只在Debian Linux发行版中才能见到这个包管理工具。

1. 安装
# dpkg -i .-1.deb

2. 卸载
# dpkg -e MYsoftware
使用源代码进行软件安装和RPM安装方式相比,使用源代码进行软件安装会复杂一些,但是用源代码安装软件是Linux下进行软件安装的重要手段,也是运行Linux的最主要的优势之一。使用源代码安装软件,能按照用户的需要选择定制的安装方式进行安装,而不是仅仅依靠那些在安装包中的预配置的参数选择安装。另外,仍然有一些软件程序只能从源代码处进行安装。

现在有很多地方都提供源代码包,到底在什么地方获得取决于软件的特殊需要。对于那些使用比较普遍的软件,如Sendmail,可以从商业网站处下载源代码软件包(如[url] [/url])。一般的软件包,可从开发者的Web站点下载。下面介绍一下安装步骤:

1.解压数据包
源代码软件通常以.做为扩展名,也有、或.tgz为扩展名的。不同扩展名解压缩命令也不相同,见表1。
2.编译软件
成功解压缩源代码文件后,进入解包的目录。在安装前阅读Readme文件和Install文件。尽管许多源代码文件包都使用基本相同的命令,但是有时在阅读这些文件时能发现一些重要的区别。例如,有些软件包含一个可以安装的安装脚本程序(.sh)。在安装前阅读这些说明文件,有助于安装成功和节约时间。

在安装软件以前要成为root用户。实现这一点通常有两种方式:在另一台终端以root用户登录,或者输入“su”,此时系统会提示输入root用户的密码。输入密码以后,就将一直拥有root用户的权限。如果已经是root用户,那就可以进行下一步。

通常的安装方法是从安装包的目录执行以下命令:

gunzip soft1.
cd soft1
#. /configure #配置#
make #调用make#
make install #安装源代码#

删除安装时产生的临时文件:
#make clean

卸载软件:
#make uninstall

有些软件包的源代码编译安装后可以用make uninstall命令卸载。如果不提供此功能,则软件的卸载必须手动删除。由于软件可能将文件分散地安装在系统的多个目录中,往往很难把它删除干净,应该在编译前进行配置。

.bin文件安装

扩展名为.bin文件是二进制的,它也是源程序经编译后得到的机器语言。有一些软件可以发布为以.bin为后缀的安装包,例如,流媒体播放器RealONE。如果安装过RealONE的Windows版的话,那么安装RealONE for Linux版本(文件名:)就非常简单了:
#chmod +x
./

接下来选择安装方式,有普通安装和高级安装两种。如果不想改动安装目录,就可选择普通安装,整个安装过程几乎和在Windwos下一样。

.bin文件的卸载,以RealONE for Linux为例,如果采用普通安装方式的话,在用户主目录下会有Real和Realplayer9两个文件夹,把它们删除即可。

Linux绿色软件

Linux也有一些绿色软件,不过不是很多。Linux系统提供一种机制:自动响应软件运行进程的要求,为它设定好可以马上运行的环境。这种机制可以是一种接口,或者是中间件。程序员编写的程序可以直接拷贝分发,不用安装,只要点击程序的图标,访问操作系统提供的接口,设定好就可以工作。若要删除软件,直接删除就可以,不用链接文件。这是最简单的软件安装、卸载方式。

上面介绍了Linux软件安装的方法,对于Linux初学者来说,RPM安装是一个不错的选择。如果想真正掌握Linux系统,源代码安装仍然是Linux下软件安装的重要手段。
参考技术B ./configure --prefix=dir
#dir即你安装程序的目录,如果安装是没有设置,
#一般默认为 /usr/local ,那你就不用带 --prefix了;
make uninstall
不过有些程序没有uninstall , ./configure 后就能在Makefile中看出。
这样你只能亲自删了, 主要有(/,/usr/,/usr/local/ ...) bin ,etc ,lib ,share 等目录。
要是看install部分,从其中找出tar格式的文件被复制到了什么路径,然后进入相应的目录进行删除即可。
还有就是软件生成的一些目录也要注意一下。本回答被提问者采纳

centos7编译安装的php7怎么卸载 解决cenos 编译安装软件后怎么卸载问题

之前有个疑问  编译安装的软件 不是yum 安装 怎么卸载 

遇到个问题, centos7编译安装的php7怎么卸载

解决:

关于卸载
如果没有配置--prefix选项,源码包也没有提供make uninstall,则可以通过以下方式可以完整卸载:

一个临时目录重新安装一遍,如:

 ./configure --prefix=/tmp/to_remove && make install
1
然后遍历/tmp/to_remove的文件,删除对应安装位置的文件即可(因为/tmp/to_remove里的目录结构就是没有配置--prefix选项时的目录结构)。
当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是Makefile文件有uninstall命令


如果配置了--prefix,如:

 ./configure --prefix=/usr/local/test
1
安装后的所有资源文件都会被放在/usr/local/test目录中,不会分散到其他目录。

使用--prefix选项的另一个好处是方便卸载软件或移植软件

  1. 当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载干净;
  2. 移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统下)

以上是关于怎么卸载源码编译安装的软件的主要内容,如果未能解决你的问题,请参考以下文章

Linux 中make install安装的软件怎么卸载掉

[教程]centos卸载安装mysql(源码编译安装方式)

如何在Ubuntu中通过编译源码包安装软件Pidgin

centos怎么卸载源码编译的mysql rpm -qagrep mysql 找不到那个包

源码编译三部曲(以nginx示例)

源码编译三部曲(以nginx示例)