Linux中國

Linux有問必答:怎麼用CheckInstall從源碼創建一個RPM或DEB包

這時候Checkinstall就可以派上使用。Checkinstall會跟蹤install命令行所創建或修改的所有文件的路徑(例如:「make install」、「make install_modules」等)並建立一個標準的二進位包,讓你能用你發行版的標準包管理系統安裝或卸載它,(例如Red Hat的yum或者Debian的apt-get命令)。已知它在 Slackware、SuSe、Mandrake 和 Gentoo 上也工作很好,請參考其官方文檔

在這篇文章中,我們只集中在紅帽子和Debian為基礎的發行版,並展示怎樣從源碼使用Checkinstall創建一個RPMDEB軟體包

在linux上安裝Checkinstall

在Debian及其衍生髮行版上安裝Checkinstall:

# aptitude install checkinstall 

在紅帽子的發行版上安裝Checkinstall,你需要下載一個已經打包好的Checkinstall rpm包(例如:從 http://rpm.pbone.net找到),不過它已經從Repoforge庫里刪除了。這個包是針對Cent OS6的,不過也可在Cent OS7里工作。

# wget ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/ikoinoba/CentOS_CentOS-6/x86_64/checkinstall-1.6.2-3.el6.1.x86_64.rpm
# yum install checkinstall-1.6.2-3.el6.1.x86_64.rpm 

一旦checkinstall安裝好,你就可以用下列格式創建一個特定的軟體包

# checkinstall <install-command> 

如果沒有參數,默認安裝命令「make install」將被使用

用Checkinstall創建一個RPMDEB

在這個例子里,我們將創建一個htop包,這是一個linux互動式文本模式進程查看器(類似 top)。

首先,讓我們從項目的官方網站下載源代碼,作為一個好的習慣,我們存儲源碼包到/usr/local/src下,並解壓它。

# cd /usr/local/src
# wget http://hisham.hm/htop/releases/1.0.3/htop-1.0.3.tar.gz
# tar xzf htop-1.0.3.tar.gz
# cd htop-1.0.3 

讓我們看看htop的安裝命令是什麼,以便我們能用Checkinstall命令調用它,如下面所示,htop用「make install」命令安裝。

# ./configure
# make install 

因此,要創建一個htop安裝包,我們可以不帶任何參數的調用checkinstall,這將使用「make install」命令創建一個包。在這個過程中, checkinstall命令會問你幾個問題。

簡而言之,如下命令會創建一個htop包:

# ./configure
# checkinstall 

「Should I create a default set of package docs?(我會創建一個默認設置的包文件?)」,回答「Y」:

你可以輸入一個包的簡短描述,然後按兩次回車:

輸入一個數字以修改下面的任何值或ENTER繼續:

然後checkinstall將自動地創建一個.rpm或者.deb包,根據你的linux系統是什麼:

在CentOS7:

在Debian 7:

via: http://ask.xmodulo.com/build-rpm-deb-package-source-checkinstall.html

譯者:luoyutiantang 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國