求一个能够管理用编译安装的方式安装的程序的管理软件

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
0o永远的菜鸟o0
帖子: 218
注册时间: 2010-12-08 17:10
来自: 宇宙中的某个角落.....

求一个能够管理用编译安装的方式安装的程序的管理软件

#1

帖子 0o永远的菜鸟o0 » 2011-02-04 19:53

RT,我有几个程序是编译安装的。现在想卸载他们。但是我把那些程序的源代码删了!现在该怎么办?
还有,我想要个能管理从源代码安装的程序的管理软件,哪个推荐下!不胜感激!
我是个完全追求运行速度的人,特效神马的都是浮云...

Ubuntu10.04LTS
坚持单系统,坚持LTS!

PS:有时候我的帖子会没排版,那说明我在用手机上论坛!
0o永远的菜鸟o0
帖子: 218
注册时间: 2010-12-08 17:10
来自: 宇宙中的某个角落.....

Re: 求一个能够管理用编译安装的方式安装的程序的管理软件

#2

帖子 0o永远的菜鸟o0 » 2011-02-05 18:48

顶下,难道没有这种软件吗?
我是个完全追求运行速度的人,特效神马的都是浮云...

Ubuntu10.04LTS
坚持单系统,坚持LTS!

PS:有时候我的帖子会没排版,那说明我在用手机上论坛!
头像
lainme
论坛版主
帖子: 7805
注册时间: 2008-09-13 19:17
系统: Arch Linux (x86_64)
联系:

Re: 求一个能够管理用编译安装的方式安装的程序的管理软件

#3

帖子 lainme » 2011-02-05 19:13

主席的博客上有介绍过一个

http://roylez.heroku.com/2010/10/24/stow.html
头像
gyteng
帖子: 762
注册时间: 2009-07-02 11:24
来自: SCUT

Re: 求一个能够管理用编译安装的方式安装的程序的管理软件

#4

帖子 gyteng » 2011-02-05 19:44

:em04 类似Arch的AUR?
头像
AutoXBC
帖子: 1744
注册时间: 2007-10-23 12:54

Re: 求一个能够管理用编译安装的方式安装的程序的管理软件

#5

帖子 AutoXBC » 2011-02-05 20:05

编译软件时顺手打包成 deb ,然后直接用新立得管理。相关教程
http://www.debian.org/doc/maint-guide/index.zh-cn.html

这个教程可以捡紧要的读,关键的是 control 文件的写法,动手时用简化的软件 checkinstall 就可以。

上面的有不懂的地方可以参考这个手册
http://www.debian.org/doc/manuals/refer ... zh-cn.html

如果两个手册都看不进去那就说明暂时不适合自己动手编译。
Bill Lee
帖子: 598
注册时间: 2009-09-19 20:50

Re: 求一个能够管理用编译安装的方式安装的程序的管理软件

#6

帖子 Bill Lee » 2011-02-05 21:53

apt 就可以
自己看看 man 吧
aMule 2.3.1 is coming...
真正动态的 amule-dlp is coming...
本人帐号在2011年1月被盗,在2011年1月3日17:19到2010年1月6日13:34之间本帐号发的一切帖子、短信等与本人无关!
amule-dlp 开发动态
amule-dlp on Google Code
WebArchiver - 基于 wget 的网页归档工具(PyQt4 GUI 前端)
Linux 2.6.34 编译笔记
jtshs256
帖子: 22323
注册时间: 2010-07-19 21:41
系统: OS X

Re: 求一个能够管理用编译安装的方式安装的程序的管理软件

#7

帖子 jtshs256 » 2011-02-05 21:57

在2011年1月3日17:19到2010年1月6日13:34之间
ls的日期ms有点问题? :em06
躺平
0o永远的菜鸟o0
帖子: 218
注册时间: 2010-12-08 17:10
来自: 宇宙中的某个角落.....

Re: 求一个能够管理用编译安装的方式安装的程序的管理软件

#8

帖子 0o永远的菜鸟o0 » 2011-02-06 10:59

找到一篇相关文章。放在这,以免丢失。

誰說 tar 檔程式無法管理?

作者: 臥龍小三
台南縣教育網路中心
Copyright © 2003 OLS3 04/08/2003 v1.0

我經常被問到一個問題,tar 檔程式究竟有沒有辦法來管理?或者,安裝之後,如何移除?
有人竟宣稱 tar 檔是無法管理的。
其實不然,辦法是人想的,而且解決的方法,經常只是一種簡單基本觀念的運用而已。


前言

以往 tar ball 程式(如 nano-1.0.9.tar.gz )是 UNIX/Linux/BSD 等平台中程式作者發行程式的主力格式。
tar 檔程式的安裝方法,並不困難,大概只要解開 tar.gz / tar.bz2 之後,下:

./configure

make

make install

就可以安裝成功!

其預設的安裝路徑,大致上,均遵守一個約定俗成的規定:即放在 /usr/local 目錄之中。
不過,這至少有以下缺點:
1. 安裝之後,要移除此一套件程式不易。(你知道、記得當初安裝了那些檔案,這些檔案放置何處嗎?)
2.往後若有新版的程式,雖說可以再次安裝把舊檔蓋過去,但萬一新版的檔案組成改變了,命名方式不同,那麼就會有一些垃圾檔案殘存在您的主機中,時日一久,安裝的套件一多,可能會發生一些意想不到的事情喔?比如執行某程式忽然出現莫明其妙的情況。

這是 tar 檔安裝模式,長期以來為人所垢病的地方。
一些解決方案
為了解決這樣的困擾,許多平台出現了進步的套件管理程式,如此:
* FreeBSD 的 pkg
* Solaris 的 pkg
*RedHat / Mandrake 中的 RPM
*Debian 中的 deb。

這些套件管理程式,共同的特徵是:
利用簡單資料庫的型式來記錄套件的安裝位置及版本資訊、套件相依關係。
優點則是:套件程式可以做安裝、查詢、更新、移除等管理動作。
對主機管理人員而言,不啻是一項莫大的福音。


並非萬靈丹

不過, 套件管理程式也是有缺點的:
1.以資料庫來記錄套件是有風險的,萬一資料庫損壞了、不見了,那對不起,您安裝的程式在管理上就有危險囉!
2.安裝套件之間經常有相依性,有時也不容易安裝和移除。
3.並不是所有的平台都有套件安裝管理程式
4.新版的程式出來了,但這些相關的套件格式一直沒有人包出來,那麼只能 "乾搭願"(台語:眼睜睜地渴望之意) 囉!

看來,方便的設計也一定會帶來某種程度的不便乎?
"太方便" 也是 "不方便" 的一種!:-Q
OK,分析完二者的情況,接下來,為您介紹如何來管理 tar 檔安裝,使您在管理套件上,多一種方便的選擇。


引進 stow

stow 是 GNU 計劃中的一部份,遵守 GPL 版權,它主要的用途便是拿來管理 tar 檔程式的安裝。
stow 的想法很單純,它憑藉的法寶只有二個:Perl 和 softlink。
Perl 是網管人員不可不知不會的必備語言,不會寫一點兒,也要會用一點兒。
softlink 則是 UNIX/Linux/BSD 中 "機"家必備 的良方。:-)

stow 的作法是:

將 tar 檔程式,集中安裝在某一個目錄下,比如 /usr/local/stow 中,然後將 tar 檔必要安裝的程式、設定檔、man檔、locale檔、info檔等,使用 softlink 的方式,連接到其原本約定俗成的位置,比如 /usr/local/bin、/usr/local/man、/usr/local/etc、、/usr/local/info、/usr/local /share/locale等,使其看起來好像真的安裝在這些目錄一樣。
實際上,tar 檔程式的實際路徑仍完整地存在於 /usr/local/stow 中。若欲移除 tar 檔程式,只要將這些 softlink 切斷即可,而這件工作,正是 stow 可以為您服務的地方。

用例
以下開始為您簡介 stow 的用法,這裡以安裝 nano 這個文字編輯器為例。

先安裝 stow:
您可以到 ftp2.tnc.edu.tw/pub/gnu/stow 或各大 GNU FTP site 中抓取 stow。
筆者寫這篇講義時,stow 的最新版是 1.3.3。

簡介步驟如下:

ncftp ftp2.tnc.edu.tw

cd pub/gnu/stow

get stow-1.3.3.tar.gz

tar xvzf stow-1.3.3.tar.gz

cd stow-1.3.3

./configure

make

make install

然後,手動開設一個目錄,用來集中存放往後安裝的 tar 檔程式。

mkdir /usr/local/stow

安裝範例程式 nano:

方法如下:

ncftp ftp2.tnc.edu.tw/pub/gnu/nano

get nano-1.0.9.tar.gz

tar xvzf nano-1.0.9.tar.gz

cd nano-1.0.9

接下來是最重要的地方:

./configure --prefix=/usr/local/stow/nano-1.0.9

這個步驟是指定 nano 要安裝的目的地位於 /usr/local/stow/nano-1.0.9

make

make install

告知 stow,你要安裝 nano 啦:

cd /usr/local/stow

stow nano-1.0.9

此時,stow 便會幫您做好 softlink 的動作,比如:

ls -la /usr/local/bin/nano

lrwxrwxrwx 1 root root 27 4?? 8 14:33 /usr/local/bin/nano -> ../stow/nano-1.0.9/bin/nano*

您看,nano 真的就好像安裝在 /usr/local/bin 中一樣,一但您執行 nano,便會自動由 softlink 的指引,找到 nano 真正的路徑 /usr/local/stow/nano-1.0.9/bin/nano。
那麼,如何移除 nano-1.0.9 呢?

很簡單!方法如下:

cd /usr/local/stow

stow -D nano-1.0.9

這樣就好啦!

若您再次查 nano 的程式路徑:

ls -la /usr/local/bin/nano

便出現找不到的情況:

ls: /usr/local/bin/nano: No such file or directory

因為 stow 已經幫您切斷這些 softlink 囉!
而 nano-1.0.9 版的所有檔案仍完好地存在於 /usr/local/stow/nano-1.0.9 目錄中。
若您想安裝新版的 nano,您可以把該目錄整個移除(rm -Rf /usr/local/stow/nano-1.0.9),再按上述步驟如法泡製一次即可。
或者,您後悔了,想再重裝一次 nano-1.0.9,只要再進入 /usr/local/stow 目錄中,
下 stow nano-1.0.9 即可,它又安裝回來囉!
您看!tar 檔程式的安裝管理,是不是很簡單呢?!
是誰說 tar 檔無法安裝管理來著? :-)


stow 的限制

stow 也是有限制的,它至少有以下缺點:
1.stow 無法處理不同 tar 檔程式之間的相依性,比如 A 這支 tar ball 可能需要 B 這支 tar ball
2.stow 無法全自動更新,若相同目錄下存在有相同檔名,stow 不會強制覆蓋過去。
3. 對大型的 tar 檔程式,stow 管理有一點問題,比如 mysql,所以,像這類的 tar 檔程式,不建議您使用 stow。


結語

沒有什麼事是不可能的。誰說 tar 檔程式無法管理?
希望最美,努力及創意便能相隨。:-)


參考資源

1.http://www.gnu.ai.mit.edu/software/stow/stow.html
2.http://savannah.gnu.org/projects/stow
3.工具程式的編譯安裝:http://linux.tnc.edu.tw/techdoc/install_tools.htm


知識共享

希望這份文件對台南縣的中小學能有所助益。
OLS3 敬上
我是个完全追求运行速度的人,特效神马的都是浮云...

Ubuntu10.04LTS
坚持单系统,坚持LTS!

PS:有时候我的帖子会没排版,那说明我在用手机上论坛!
回复