2011-09-07 44 views
9

我正在Linux機器上安裝perl模塊(不使用CPAN)。當我運行命令:構建perl模塊給出圖元文件錯誤

perl Build.PL 

我得到以下錯誤:

ERROR: Missing required field 'dist_abstract' for metafile 
Could not get valid metadata. Error is: Invalid metadata structure. 
Errors: Missing mandatory field, 'abstract' (abstract) [Validation: 1.4], 
value is an undefined string (abstract) [Validation: 1.4] 
at /usr/local/share/perl5/Module/Build/Base.pm line 4559 
Could not create MYMETA files 

我試過谷歌搜索位,這個錯誤的碎片,但沒有發現任何解決方案。只是尋找可能導致此錯誤的線索。

下面是包含安裝它所需的文件的zip文件的鏈接: https://oncourse.iu.edu/access/content/user/brilewis/Filemanager_Public_Files/DataDownloader.zip

+4

如果我們知道你正在安裝哪個模塊(來自CPAN,對吧?)以及如何將它解壓縮到系統中,這可能會有所幫助。這樣我們可以自己看看。 – DavidO

+3

你想要安裝什麼模塊? – Cfreak

+0

你從哪裏找到該鏈接? –

回答

5

首先,在所有請確保您有包Module::Build安裝。 你需要在這個軟件包中壓縮幾個gzip文件。我不知道爲什麼作者gzipped他們:

gzip -d *.gz 

我真的不知道爲什麼作者存檔每個安裝文件。這對我來說看起來像是一個錯誤。

比你可以安裝所有的依賴關係(該模塊需要一些):

./Build installdeps 

然後終於安裝模塊本身:

./Build 
./Build test 
./Build install 

但是我必須警告你,這個模塊中的位打包奇怪的方式,並不能保證它的工作。

0

你的機器上有root權限嗎?您可以使用cpan實用程序來構建和安裝您的模塊。使用cpan是相當直截了當:

$ cpan 

之後,它會做很多的配置,簡單地採取默認值。完成後,它會提示cpan>。所有你需要做的是這樣的:

cpan> install Module::Name 

其中Module::Name是你想要安裝的模塊。檢查CPAN存檔以獲取模塊的名稱。

如果存在任何依賴關係,CPAN會詢問您是否要下載並安裝這些依賴項。說是的,CPAN將安裝依賴關係,然後你的模塊。

使用cpan是安裝在CPAN存檔中找到的第三方模塊的最佳方式。它負責照顧所有的依賴關係,測試和爲你建設。

嘗試通過CPAN進行安裝,然後查看是否仍有問題。

4

該模塊的NAME部分在其中沒有-,例如,,

=head1 NAME 

Foo::Bar implements a Foo framework. 

會失敗,但如果你把它

=head1 NAME 

Foo::Bar - implements a Foo framework. 

那麼它會工作。

+0

根據我的經驗,這個(即缺少'-')似乎是'缺少必要的字段'dist_abstract'導致metafile'錯誤的原因* – Randall