2016-08-05 3 views
0

Je veux à installer XML :: LibXML (entre autres) sur une machine Linux avec Internet sans et sans accès racine.Télécharger XML :: LibXML et ses dépendances

Ma solution actuelle est de télécharger XML :: LibXML et ses dépendances à partir de Windows, avec perl fraise, puis installez les sur mon linux machine à. Mais je n'ai pas trouvé comment faire ça.

Voici ce que j'ai essayé:

D'abord, je télécharger XML :: LibXML de shell CPAN de Windows:

cpan[1]>get XML::LibXML 

Et il télécharge avec succès le paquet dans:

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

Mais pas ses dépendances. En effet, maintenant sous 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 

Nous pouvons voir que XML :: LibXML et son sont correctement XML dépendance trouve :: SAX dans mon miroir local /data/cpan/sources/, parce que je l'ai téléchargé XML: : SAX aussi.

Cependant, les autres dépendances ne sont pas trouvées:

==> 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 

Merci.

+2

L'installation de modules "pure Perl" sur Strawberry Perl pour Windows et la copie des fichiers sur Linux peuvent fonctionner mais probablement pas facilement. Mais XML :: LibXML est un wrapper autour de la bibliothèque C libxml2 et le code de l'encapsuleur C doit être compilé pour le bon système d'exploitation et la bonne version de Perl - vous ne pouvez donc pas simplement copier les fichiers .DLL sur Linux. Je recommande vraiment de parler à la personne avec un accès root et de lui demander de [installer le package du système d'exploitation] (http://grantm.github.io/perl-libxml-by-example/installation.html#installing-on-linux). –

+0

Vous essayez de télécharger un module à partir d'une direction locale, 'file: ///data/cpan/sources/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.11.tar.gz failed' Essayez et installez-le un du repos par lui-même, puis réessayez avec LibXML. Si vous réutilisez l'installation de Strawberry Perl, ce module n'a peut-être pas été installé pour une raison quelconque. – jjmerelo

Répondre

2

Il est peu probable que l'installation de XML::LibXML soit la dernière de vos exigences, et je vous suggère d'utiliser minicpan pour créer un miroir CPAN local que vous pouvez copier sur votre système hors ligne. Vous pouvez ensuite installer ce que vous voulez dans ce miroir

+0

L'installation pour un module particulier, XML :: NamespaceSupport échoue. Avoir une installation locale de CPAN ne va pas aider. – jjmerelo

+0

@jjmerelo: La construction de 'XML :: NamespaceSupport' échoue au démarrage lorsque cpan tente de récupérer le targz. minicpan corrigera certainement cela. – Borodin

+0

OK, je vois ce que vous voulez dire. Mais s'il est capable d'installer minicpan, il pourra installer tout ce qu'il cherche, n'est-ce pas? Le problème est qu'il travaille sur un système sans Internet et, en plus, pas d'accès root, donc il doit se débrouiller avec tout ce qui est disponible. – jjmerelo