[英]How can I install Perl module without using CPAN.pm?
可能嗎?
如果您下載了源代碼,並閱讀了README
文件。 這可能會告訴你你應該做的
perl Makefile.PL
make
make test
make install
要么
perl Build.PL
./Build
./Build test
./Build install
如果下載源碼,一般會有一個Makefile.PL。 你運行“perl Makefile.PL; make; make test; make install”,它會為你構建和安裝。
顯然,如果您不使用 CPAN.pm,您將不得不自己處理依賴項。
另外,如果你不能使用 CPAN.pm 的原因是你沒有安裝到 /usr/lib/perl 的權限,你可以強制 CPAN.pm 在本地安裝,但我忘記了如何安裝。
如果您在 Linux 盒子上,通常可以使用內置的 package 管理器獲得很大一部分包。 例如,在 Ubuntu 系統上,如果您想安裝 PostgreSQL Perl 模塊,您只需執行以下操作:
sudo apt-get install libpg-perl
您可以在此處查看 Ubuntu 的模塊列表: http://packages.ubuntu.com/hardy/perl/
我發現我經常可以自己猜出這些名字。 不確定這是否有幫助,但對我自己來說,我經常發現它比 CPAN 更容易使用,因為它在解決依賴關系方面做得更好。
參見此處: How to install perl modules using CPAN without root
我剛剛在沒有 root 訪問權限的服務器上設置了它,CPAN 會自動完成所有操作。
但是如果你真的想安裝一個沒有 CPAN 的模塊並且你沒有 root 權限(假設這是因為你不想使用 CPAN),你可以按如下方式進行
perl Makefile.PL PREFIX=$HOME
make
make install
您將不得不自己尋找依賴項,因此最好使用 CPAN。
如果問題是沒有 root 訪問權限,我建議查看local::lib
以及此網頁以了解 CPAN.pm 和非 root 安裝。
但是要回答問題,CPAN 或 CPANPLUS 是有幫助的,但不是必需的。 你總是可以像 Leon 所說的那樣用老式的方法來做——盡管通常情況下,不這樣做會更容易。
如果 .pm 文件是純 Perl 並且不需要編譯,您可以將它放在應用程序的 lib 文件夾中並正常使用它。
如果您使用的是 Red Hat(Fedora、CentOS),則應盡可能為 Perl 依賴項使用 RPM。 Perl 包幾乎總是命名為 perl-Module-Name,例如 perl-DBI、perl-Spreadsheet-WriteExcel 等。
在 Ubuntu 上,命名方案是 libmodule-name-perl。
我們可以通過 ubuntu 中的終端安裝所有 perl 模塊。如果您使用的是 ubuntu 服務器,則執行以下命令,'sudo apt-get install "perl_module"' 您想要的模塊只需在“ perl_module" 意味着如果你想安裝 Apache2::Cookie 它將在 "libapreq2" 中,所以你必須像 "sudo apt-get install libapreq2"
如果你問這個是因為你在使用 CPAN 時遇到問題......你可能已經用完了 RAM,這就是你不能使用 CPAN 的原因。
也許您沒有交換文件。 試試這個:
$ sudo su
# dd if=/dev/zero of=/swap bs=1M count=1k # create a 1GB file
# mkswap /swap
# swapon /swap
否則......停止一些服務。
$ sudo service mysql stop
$ sudo service nginx stop
...然后再試一次
$ cpan install CPAN
$ cpan install MIME::Lite::TT::HTML
我和其他人一樣強烈建議使用 CPAN.pm。 使用起來輕而易舉,並且可以自動解決與您需要的模塊相關的任何依賴關系。
另一方面,我建議您閱讀perldoc上的perlmodinstall文檔,因為它也提供了其他操作系統的詳細信息。
問候,
傑夫
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.