LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2914|回复: 3

[转]关于管理自己编译的软件

[复制链接]
发表于 2003-10-17 15:04:20 | 显示全部楼层 |阅读模式
不知道大家是怎麼管理自行編譯的軟體
小弟野人獻曝,提供自己的方法給大家參考
如果之前已有前輩發表過?似的文章
還請原?小弟浪費大家的時間看文章  

小弟的方法是使用 Encap 套件管理系統中的一個程式:epkg
這個程式可以在 http://www.encap.org/epkg/ 取得
抓下?磲嵋勒找话愕某绦颍./configure; make; make install
便可以安裝這個程式

安裝完成後,會多一個目錄叫 /usr/local/encap/
這個目錄是 Encap 套件管理的主目錄
所有的軟體都會放在這個目錄內方便管理
Encap 套件管理系統的概念在於不要將程式分散安裝在 /usr/local/bin/, /usr/local/man/ 等目錄下
而是將 prefix 由 /usr/local 改為 /usr/local/encap/程式名稱-版本
這樣可以方便管理與移除套件

為什麼這樣會方便管理呢?
舉例?碚f裝 vim-6.2.tar.bz2 時
執行 configure 時請加一個參數 --prefix=/usr/local/encap/vim-6.2
make install 後便會將 vim 的執行檔、說明檔與設定檔分別安裝在
/usr/local/encap/vim-6.2/bin/, /usr/local/encap/vim-6.2/man/ 與 /usr/local/encap/vim-6.2/share/
接著執行 epkg -i vim
epkg 便會作下面的動作
ln -s /usr/local/encap/vim-6.2/bin/vim /usr/local/bin/vim
(其餘檔案也是作一樣的連結動作)
如此使用者不需改 PATH 設定一樣可以用 vim
而自行編譯的 vim 也不會混?y地散落在 /usr/local/ 的各處
而是集中放在 /usr/local/encap/vim-6.2/

各位看出這樣的好處了嗎?
以後如果想要移除 vim
只要執行 epkg -r vim
epkg 便會將 /usr/local/ 下所有 vim 相關連結移除
然後只要輕輕鬆鬆砍掉 /usr/local/encap/vim-6.2/ 便可以了
或是如果 vim-6.3 出了
將新版裝在 /usr/local/encap/vim-6.3/
然後執行 epkg -u vim
epkg 便會將所有 vim 相關連結由 /usr/local/encap/vim-6.2/ 改到 /usr/local/encap/vim-6.3/
接著便可以直接砍掉舊版的 /usr/local/encap/vim-6.2/
如此一?恚孕芯幾g與安裝 source 最痛苦的兩個問題便迎刃而解
再也不需要煩?懒
发表于 2003-10-17 15:21:19 | 显示全部楼层
我是按realhyg兄弟的推荐,用checkinstall这个工具,编译时只要把最后的make install改成checkinstall就能自动生成tgz包,然后用标准的slackware包管理工具就可以管理了。
 楼主| 发表于 2003-10-17 15:32:37 | 显示全部楼层
对,把src做成tgz就这样,把最后那步改为checkinstall
发表于 2003-10-18 15:55:53 | 显示全部楼层

使用--prefix的方法不是很可靠

有些软件,并不会乖乖的将所有生成的文件都放到prefix指定的目录中去,虽然还有一些别的参数可以控制,但是终究比较麻烦。最喜欢还是checkinstall
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表