星期三, 三月 05, 2008
Debian 安裝 Perl CPAN 入門
學 Perl 一定要會用 CPAN(Comprehensive Perl Archive Network), CPAN 有太多套件可以使用. 但是在 Debian 上, 要安裝 CPAN 等套件, 想到就頭痛,套件都不知道裝到哪邊去, 然後就隨便亂用, 不知道裝什麼東西, 移機的時後就會知道痛了, 還是應該好好研究研究...
找到下述幾篇文章蠻重要的:
- Debian Perl Policy - 這篇一定要看, 內容很短, 很快就看完囉~
- Building Debian packages of Perl modules
除了 Debian 預設 deb 的 Package 外, 有很多已經包好的 Packages 可以直接安裝使用:
- debian.pkgs.cpan.org -- debified CPAN packages
- 可以考慮加 "deb http://debian.pkgs.cpan.org/debian unstable main" 此行, 進 /etc/apt/sources.list, 就可以省不少事~
再來, 看看 CPAN 標準安裝法:
CPAN 安裝的前置設定
- $ sudo cpan # 設定 cpan 一些參數, 會問以下的問題:
- 遇到 PREFIX=~/perl, You Choose [INSTALLDIRS=site] 時, 若有特別想指定, 就寫 /usr, 不然就跳過.
- (PS: perl -V:prefix 可以查現在 prefix 是哪個(等同 INSTALLDIRS=site), Debian 預設是 /usr)
- 再來就是設定要從哪個站抓 CPAN Package 就可以使用了
於 Local 要安裝 CPAN Package 的方法:
- 先依上述設好 CPAN 後, 下述方法挑其一使用即可:
- # cpan> install Package
- sudo perl -MCPAN -e 'CPAN::Shell->install("Text::Wrap")'
- cpan -i Text::Wrap
抓取 tar.gz 於 Local 安裝 Perl Modlues
- # cd /usr/local
- # tar zxvf filename.tar.gz
- # cd filename
- # perl Makefile.PL
- # make install
查看/修改 CPAN 設定
- cpan> o conf
- 修改設定 vim /etc/perl/CPAN/Config.pm
CPAN Upgrade 升級
- sudo perl -MCPAN -e 'CPAN::Shell->install(CPAN::Shell->r)'
CPAN 更新 index
- reload index
以下是 Debian Perl 安裝設定的標準路徑, 詳可見 Debian Perl Policy - Perl Packaging, 主要分下面三種(site/vendor/core):
site (於 local 直接 "# cpan> install Package 安裝" 或 "sudo perl -MCPAN -e 'CPAN::Shell->install("Text::Wrap")' 安裝", 會往下述路徑裝)
- Modules installed by the local administrator for the current version of Perl
- /usr/local/lib/perl/version
- /usr/local/share/perl/version
- Where version indicates the current Perl version ($Config{version}).
vendor (Debian Package 直接安裝會於此處, ex: dpkg -L libwww-mechanize-perl)
- Packaged modules
- /usr/lib/perl5
- /usr/share/perl5
core
- Modules included in the core Perl distribution.
- /usr/lib/perl/version
- /usr/share/perl/version
程式安裝路徑
- /usr/local/bin
文件安裝路徑
- 程式說明文件: /usr/share/man/man1 (檔案命名: Module_name.1.gz, 結尾要有 ".1.")
- Modules 說明文件: /usr/share/man/man3 (檔案命名: Module_name.3perl.gz, 結尾要有 ".3perl.")
將 Perl Module 包成 Debian Package
- Module Packages 命名規則: Foo::Bar => libfoo-bar-perl
- 其它詳細可見: Debian Perl Policy - Packaged Modules
我的安裝流程
- apt-cache search cpan package_name # 能用 deb 裝, 就用 deb 的
- apt 找不到時, 進 cpan>, 使用 cpan> install package_name 來裝
- cpan> 裝不起來時, 再到 cpan 網站上抓 package.tar.gz, 用 perl Makefile.PL; make install 安裝
個人覺得 debian 上 perl 和 cpan 的預設配置相當簡單,如果不需要用到 c/c++ lib 的 module 直接用 cpan 安裝都很容易裝好,集中使用 cpan 裝的話備份起來輕鬆得多 :p
Comment by
shelling
(03/09/2008 00:39)
回 shelling
嗯嗯, 只是我之前裝, 每次看起來都是裝在自己的目錄下, 一直不知道怎麼裝在公用目錄, 後來查查才知道, 所以順便留下紀錄囉 :)
Comment by
Tsung
(03/09/2008 20:23)
這篇好,大推。
Comment by
c9s
(03/30/2008 17:57)
發表迴響
PS: 若無法留言, 請先確認是否有打開 JavaScript, 造成您的困擾, 實在萬分對不起 Orz...(如果無法留言, 勞煩可以發信給我好嗎? 謝謝.)
PS2: 若您的留言被誤判, 我都會再自行看過, 不需要一直重覆張貼~
PS2: 若您的留言被誤判, 我都會再自行看過, 不需要一直重覆張貼~





