2016-08-05 129 views
0

我想Linux機器上安裝XML ::的libxml(等等)與沒有互聯網沒有根訪問。下載XML ::的libxml和它的依賴

我目前的解決方案是下載 XML ::的libxml和它的依賴從Windows,草莓perl的,然後的Linux機上安裝他們。但我還沒有找到如何做到這一點。

這是我已經試過:

首先,我從Windows下載 XML ::的libxml CPAN命令:

cpan[1]>get XML::LibXML 

併成功下載軟件包到:

C:\Users\mikedu95\.cpan\sources\authors\id\S\SH\SHLOMIF\XML-LibXML-2.0128.tar.gz 

但不是它的依賴關係。事實上,現在在Linux上:

cpanm XML::LibXML --from /data/cpan/sources/ 

--> Working on XML::LibXML 
Fetching file:///data/cpan/sources/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0128.tar.gz ... OK 
Configuring XML-LibXML-2.0128 ... OK 
==> Found dependencies: XML::SAX, XML::SAX::Exception, XML::NamespaceSupport, XML::SAX::Base 
--> Working on XML::SAX 
Fetching file:///data/cpan/sources/authors/id/G/GR/GRANTM/XML-SAX-0.99.tar.gz ... OK 
Configuring XML-SAX-0.99 ... OK 

我們可以看到,XML ::的libxml及其依賴XML :: SAX在我的本地鏡像/data/cpan/sources/正確發現,因爲我已經下載XML: :SAX

然而,其他的依賴不會被發現:

==> Found dependencies: XML::NamespaceSupport, XML::SAX::Base 
--> Working on XML::NamespaceSupport 
Fetching file:///data/cpan/sources/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.11.tar.gz ... FAIL 
! Download file:///data/cpan/sources/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.11.tar.gz failed. Retrying ... 
! Download file:///data/cpan/sources/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.11.tar.gz failed. Retrying ... 
! Download file:///data/cpan/sources/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.11.tar.gz failed. Retrying ... 
! Failed to download file:///data/cpan/sources/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.11.tar.gz 
! Failed to fetch distribution XML-NamespaceSupport-1.11 

感謝。

+2

在Strawberry Perl for Windows上安裝「純Perl」模塊並將文件複製到Linux可能會工作,但可能並不容易。但是XML :: LibXML是libxml2 C庫的一個包裝器,並且必須爲正確的操作系統和正確版本的Perl編譯C包裝器代碼 - 因此您不能將.DLL複製到Linux。我真的建議與root用戶交談,並要求他們[安裝OS軟件包](http://grantm.github.io/perl-libxml-by-example/installation.html#installing-on-linux )。 –

+0

您正嘗試從本地方向下載模塊,'file:///data/cpan/sources/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.11.tar.gz失敗嘗試並安裝一個來自自己的回購,然後再次嘗試使用LibXML。如果您正在重新使用Strawberry Perl安裝,可能是因爲某些原因未安裝該模塊。 – jjmerelo

回答

2

安裝XML::LibXML不太可能是您的最後一項要求,我建議您使用minicpan創建本地CPAN鏡像,您可以將其複製到離線系統。然後,您可以從該鏡像安裝任何您喜歡的東西

+0

XML :: NamespaceSupport特定模塊的安裝失敗。本地安裝CPAN不會有幫助。 – jjmerelo

+0

@jjmerelo:當cpan嘗試獲取targz時,XML :: NamespaceSupport的構建在開始時失敗。 minicpan肯定會解決這個問題。 – Borodin

+0

好的,我明白你的意思了。但是,如果他能夠安裝minicpan,他將能夠安裝他正在尋找的任何東西,對吧?問題在於他在一個沒有互聯網的系統上工作,另外,沒有root訪問權限,所以他必須處理任何可用的問題。 – jjmerelo