Linux源码编译安装和卸载

Linux源码编译安装和卸载
Linux下正常的编译安装/卸载
源码的安装一般由3个步骤组成:

配置(configure)
编译(make)
安装(make install)。
configure文件是一个可执行的脚本文件,它有很多选项,在待安装的源码目录下使用命令./configure –help可以输出详细的选项列表。

其中–prefix选项是配置安装目录,如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较凌乱。

如果配置了–prefix,如:

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

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

当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载干净;
移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统下)
当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是Makefile文件有uninstall命令。

make install PREFIX=path
这里PREFIX必须大写,其实绝大部分情况下 make install 都不能再指定 PREFIX 了,因为大部分程序都会 configure 时得到的 prefix 写入 config.h,然后在编译时编译到可执行文件内部,以便在执行时读取资源文件等。

这样在编译完毕后,就不能再修改 prefix 了。只有运行时不需要资源文件的小工具,才可能在安装的时候随意选择 PREFIX,或者具有 loader 的大程序,在执行时通过 loader 传入路径……

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

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

$ ./configure --prefix=/tmp/to_remove && make install
然后遍历/tmp/to_remove的文件,删除对应安装位置的文件即可(因为/tmp/to_remove里的目录结构就是没有配置–prefix选项时的目录结构)。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yueyecheshou1980

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值