perlmodinstall - 安裝 CPAN 模組
您可以將模組視為可重複使用的 Perl 程式碼的基本單位;請參閱 perlmod 以取得詳細資訊。每當有人建立一段他們認為對全世界有用的 Perl 程式碼時,他們會在 https://www.cpan.org/modules/04pause.html 註冊為 Perl 開發人員,以便他們可以將程式碼上傳到 CPAN。CPAN 是 Perl 綜合檔案網路,可於 https://www.cpan.org/ 存取,並可於 https://metacpan.org/ 搜尋。
此文件是提供給想要下載 CPAN 模組並將其安裝在自己的電腦上的人員。
首先,您確定您的系統中沒有該模組嗎?請嘗試 perl -MFoo -e 1
。(將「Foo」替換為模組名稱;例如,perl -MCGI::Carp -e 1
。)
如果您沒有看到錯誤訊息,表示您有該模組。(如果您看到錯誤訊息,您仍然可能擁有該模組,但它不在您的路徑中,您可以使用 perl -e "print qq(@INC)"
顯示路徑。)在本文檔的其餘部分,我們將假設您真的完全沒有安裝模組,但已在 CPAN 上找到它。
現在您有一個以 .tar.gz(或較少見的 .zip)結尾的檔案。您知道裡面有一個美味的模組。您現在必須執行四個步驟
以下是針對每個作業系統執行每個步驟的方法。這並非取代閱讀模組附帶的 README 和 INSTALL 檔案!
另請注意,這些說明是針對將模組安裝到系統的 Perl 模組儲存庫而量身打造的,但您可以將模組安裝到任何您想要的目錄中。例如,在我說 perl Makefile.PL
的地方,您可以替換 perl Makefile.PL PREFIX=/my/perl_directory
將模組安裝到 /my/perl_directory。然後,您可以使用 use lib "/my/perl_directory/lib/site_perl";
或有時僅使用 use "/my/perl_directory";
從 Perl 程式中使用模組。如果您在一個系統上,需要超級使用者/root 權限才能將模組安裝到您在輸入 perl -e "print qq(@INC)"
時看到的目錄中,您會想要將它們安裝到本機目錄(例如您的家目錄)並使用此方法。
如果您在 Unix 或類 Unix 系統上,
您可以使用 Andreas Koenig 的 CPAN 模組( https://metacpan.org/release/CPAN )自動執行以下步驟,從解壓縮到安裝。
A. 解壓縮
使用 gzip -d yourmodule.tar.gz
解壓縮檔案
您可以從 ftp://prep.ai.mit.edu/pub/gnu/ 取得 gzip
或者,您可以將此步驟與下一個步驟結合以節省磁碟空間
gzip -dc yourmodule.tar.gz | tar -xof -
B. 解壓縮
使用 tar -xof yourmodule.tar
解壓縮結果
C. 建置
進入新建立的目錄並輸入
perl Makefile.PL
make test
或
perl Makefile.PL PREFIX=/my/perl_directory
以在本地安裝它。(請記住,如果您這樣做,您必須將 use lib "/my/perl_directory";
放在要使用此模組的程式最上方。
D. 安裝
仍在此目錄中,輸入
make install
請確定您擁有適當的權限,可以在 Perl 5 函式庫目錄中安裝模組。通常,您需要成為 root 使用者。
對於具有動態連結的 Unix 系統,您只需執行這些步驟即可。大多數 Unix 系統都有動態連結。如果您的系統沒有,或者由於其他原因您有一個靜態連結的 perl,而且模組需要編譯,您需要建置一個包含模組的新 Perl 二進位檔。同樣地,您可能需要成為 root 使用者。
如果你正在執行 ActivePerl(Win95/98/2K/NT/XP、Linux、Solaris),
首先,從 shell 輸入 ppm
,並查看 ActiveState 的 PPM 儲存庫是否有你的模組。如果有,你可以使用 ppm
安裝它,而且你不必費心執行這裡的其他步驟。你也可以嘗試使用上方「Unix 或 Linux」區段的 CPAN 指示。否則,你必須按照下列步驟執行。
A. DECOMPRESS
你可以使用開源的 7-zip ( https://www.7-zip.org/ ) 或共享軟體 Winzip ( https://www.winzip.com ) 來解壓縮和解開模組。
B. UNPACK
如果你使用 WinZip,這已經為你完成了。
C. BUILD
你需要 nmake
或 gmake
。
模組是否需要編譯(例如,它是否有以 .xs、.c、.h、.y、.cc、.cxx 或 .C 結尾的檔案)?如果有,你的生活現在正式變得艱難,因為你必須自己編譯模組(在 Windows 上並不容易)。你需要一個編譯器,例如 Visual C++。或者,你可以從 ActiveState 下載預先建置的 PPM 套件。 http://aspn.activestate.com/ASPN/Downloads/ActivePerl/PPM/
進入新建立的目錄並輸入
perl Makefile.PL
nmake test
D. INSTALL
仍在此目錄中,輸入
nmake install
如果你在 OS/2 上,
從 Hobbes 取得 EMX 開發套件和 gzip/tar ( http://hobbes.nmsu.edu/h-browse.php?dir=/pub/os2/dev/emx/v0.9d ),然後遵循 Unix 的指示。
如果你在 VMS 上,
從 CPAN 下載時,請將你的檔案儲存為 .tgz
副檔名,而不是 .tar.gz
。檔名中的所有其他句點都應以底線取代。例如,Your-Module-1.33.tar.gz
應下載為 Your-Module-1_33.tgz
。
A. 解壓縮
輸入
gzip -d Your-Module.tgz
或者,對於已壓縮的模組,請輸入
unzip Your-Module.zip
gzip、zip 和 VMStar 的可執行檔
http://www.hp.com/go/openvms/freeware/
以及其原始碼
http://www.fsf.org/order/ftp.html
請注意,GNU 的 gzip/gunzip 與 Info-ZIP 的 zip/unzip 套件不同。前者是一個簡單的壓縮工具;後者允許建立多檔案的壓縮檔。
B. 解壓縮
如果你正在使用 VMStar
VMStar xf Your-Module.tar
或者,如果你喜歡 VMS 命令語法
tar/extract/verbose Your_Module.tar
C. 建置
請確定你有 MMS(來自 Digital)或免費軟體 MMK(可在 http://www.madgoat.com 的 MadGoat 取得)。然後輸入此內容,為模組建立 DESCRIP.MMS
perl Makefile.PL
現在你可以準備建置
mms test
如果你正在使用 MMK,請將上面的 mms
替換為 mmk
。
D. 安裝
輸入
mms install
如果你正在使用 MMK,請將上面的 mms
替換為 mmk
。
如果你在 MVS 上,
將 .tar.gz 檔案作為二進位檔引入 HFS;不要從 ASCII 轉換為 EBCDIC。
A. 解壓縮
使用 gzip -d yourmodule.tar.gz
解壓縮檔案
你可以從 http://www.s390.ibm.com/products/oe/bpxqp1.html 取得 gzip
B. 解壓縮
使用以下指令解開結果
pax -o to=IBM-1047,from=ISO8859-1 -r < yourmodule.tar
BUILD 和 INSTALL 步驟與 Unix 相同。有些模組會產生 Makefiles,而這些 Makefiles 比較適合使用 GNU make,GNU make 可從 http://www.mks.com/s390/gnu/ 取得
請注意,並非所有模組都可以在所有平台上執行。請參閱 perlport 以取得有關可攜性問題的詳細資訊。請閱讀文件,了解模組是否可以在您的系統上執行。基本上有三大類型的模組無法在所有平台上「開箱即用」(有些可能會重疊)
應該可以執行,但無法執行。這些問題需要修正;請考慮聯絡作者,並可能撰寫一個修補程式。
需要編譯,而目標平台沒有現成的編譯器。(這些模組通常包含 .xs 或 .c 檔案。)您可能可以在 CPAN 或其他地方找到現有的二進位檔,或者您可能想要嘗試取得編譯器並自行建置,然後釋出二進位檔供其他不幸的人使用。
針對特定平台。(例如 Win32:: 模組。)如果模組特別針對非您平台設計,您很可能無法使用。
如果模組應該可以在您的平台上執行,但行為與您的預期不同,或者您不確定模組是否可以在您的平台上執行,請查看 CPAN Testers。如果沒有列出您想要的模組,您可以自行測試並讓 CPAN Testers 知道,您可以加入 CPAN Testers,或者您可以要求進行測試。
https://cpantesters.org/
如果您對此頁面有任何建議的變更,請告訴我。請不要寄信給我,詢問如何安裝您的模組。模組太多,而 Orwants 太少,我無法回答或甚至確認您的所有問題。請改為聯絡模組作者,詢問熟悉您作業系統上 Perl 的人,或者如果其他方法都失敗了,請在 https://rt.cpan.org/ 提交問題單。
Jon Orwant
orwant@medita.mit.edu
在 Chris Nandor 的無價協助,以及 Brandon Allbery、Charles Bailey、Graham Barr、Dominic Dunlop、Jarkko Hietaniemi、Ben Holzman、Tom Horsley、Nick Ing-Simmons、Tuomas J. Lukka、Laszlo Molnar、Alan Olsen、Peter Prymmer、Gurusamy Sarathy、Christoph Spalinger、Dan Sugalski、Larry Virden 和 Ilya Zakharevich 的寶貴協助下。
第一版 1998 年 7 月 22 日;最後一次修訂 2001 年 11 月 21 日。
著作權所有 (C) 1998、2002、2003 Jon Orwant。保留所有權利。
此文件可根據 Perl 本身的條款進行散布。