Ubuntu下将自编译软件纳入dpkg管理

2015-09-15  本文已影响130人  lyallchan

背景和目标

linux下编译、卸载程序

    # 编译三部曲               
    ./configure --prefix=/usr
    make
    sudo make install

    # 删除中间文件
    make clean

    # 删除make的配置文件,以便于重新编译
    make distclean

    # 卸载
    sudo make uninstall

问题

  1. 不能通过apt-get或者dpkg管理
  2. 迁移到别的系统上,尤其是迁移到docker中,只能重新编译,费时费力

工具

两个神器 auto-aptcheckinstall

sudo apt-get install auto-apt checkinstall
auto-apt run ./configure --prefix=/usr
make
sudo checkinstall

ok了

运行成功以后,编译完成,安装完成,同时在当前目录下生成.deb文件,可以cp到docker中,然后

    dpkg -i ***.deb  # 安装

    dpkg -r 包名称   # 卸载
    apt-get remove 包名称 # 同上

    dpkg -l | grep 包名称 # 检查是否安装成功
    apt-cache pkgnames | grep 包名称 # 同上

    dpkg -L 包名称 # 列出包中安装的文件位置

注意要点

  1. checkinstall默认是交互式运行,允许你定义包的名称,版本号之类的,其中版本号要以数字开头,否则会报错
  2. docker中安装的时候,需要手工指定这些参数,具体的可以看看帮助文件,都有
上一篇 下一篇

猜你喜欢

热点阅读