Hoe XML te installeren :: LibXML op Ubuntu Linux

Ik was vandaag aan het werken aan een nieuwe tool, waar ik een klein probleempje tegenkwam tijdens het uitvoeren van enkele tests met een Perl-script in mijn Ubuntu-box die was geïnstalleerd met behulp van Oracle Virtual Box.

Kortom, de weergegeven fout was "Kan XML / LibXML.pm niet vinden in @INC" en het zag er als volgt uit:

Kan XML / LibXML.pm niet vinden in @INC (mogelijk moet u de XML :: LibXML-module installeren) (@INC bevat: / etc / perl /usr/local/lib/x86_64-linux-gnu/perl/5.22 .1 /usr/local/share/perl/5.22.1 /usr/lib/x86_64-linux-gnu/perl5/5.22 / usr / share / perl5 /usr/lib/x86_64-linux-gnu/perl/5.22 / usr /share/perl/5.22 / usr / local / lib / site_perl / usr / lib / x86_64-linux-gnu / perl-base.) op ./run_test.pl regel 15.

BEGIN mislukte compilatie afgebroken op ./run_test.pl regel 15.

Omdat de fout hintte naar de oplossing, probeerde ik de LibXML Perl-module te installeren met behulp van de onderstaande opdracht:

sudo cpan install XML::LibXML

Maar deze opdracht kwam in een ander probleem. De volledige output is dit:

Interne nullogger laden. Install Log :: Log4perl voor het loggen van berichten

'/Home/abhi/.cpan/Metadata' lezen

Database werd gegenereerd op do, 23 mrt 2017 09:41:02 GMT

Installatie uitvoeren voor module 'XML :: LibXML'

Checksum voor /home/abhi/.cpan/sources/authors/id/S/SH/SHLOMIF/XML-LibXML-2.0129.tar.gz ok

'YAML' niet geïnstalleerd, zal de persistente status niet opslaan

S / SH / SHLOMIF / XML-LibXML-2.0129.tar.gz configureren met Makefile.PL

schakel native perl UTF8 in

met xml2-config ... lukte het niet om libxml2 config te krijgen

opties:

LIBS = '- L / usr / local / lib -L / usr / lib -lxml2 -lm'

INC = '- I / usr / local / include -I / usr / include'

Als dit fout is, opnieuw uitvoeren als:

$ / usr / bin / perl Makefile.PL LIBS = '- L / pad / naar / lib' INC = '- I / pad / naar / opnemen'

Controleren op de mogelijkheid om te koppelen tegen xml2 ... nee

Controleren of de koppeling met libxml2 ... libxml2, zlib en / of de Math-bibliotheek (-lm) ​​niet is gevonden.

Probeer LIBS- en INC-waarden in te stellen op de opdrachtregel

Of haal libxml2 uit

//xmlsoft.org/

Als u installeert via RPM's, moet u ook de -devel installeren

RPM's, omdat dit de headers (.h-bestanden) zijn.

U kunt ook proberen Perl Makefile.PL uit te voeren met de parameter DEBUG = 1

om de exacte reden te zien waarom de libxml2-installatie wordt gedetecteerd

is mislukt of waarom Makefile.PL niet in staat was om een ​​testprogramma samen te stellen.

Geen 'Makefile' heeft SHLOMIF / XML-LibXML-2.0129.tar.gz gemaakt

/ usr / bin / perl Makefile.PL INSTALLDIRS = site - NIET OK

De oplossing is niet erg lastig, maar het kan enige tijd kosten om erachter te komen. In deze snelle tip laat ik zien hoe je de LibXML-module op Ubuntu of een andere Linux-distributie op basis van Ubuntu installeert.

Hoe LibimeML Perl-module op Ubuntu Linux te installeren

Ik heb de reden voor LibXML-installatiefouten gemarkeerd in de bovenstaande foutuitvoer. Het is heel duidelijk op zichzelf:

Controleren of de koppeling met libxml2 ... libxml2, zlib en / of de Math-bibliotheek (-lm) ​​niet is gevonden.

Het is duidelijk dat het systeem libxml2 en zlib bibliotheken mist. Om dit probleem op te lossen, volstaat het om de vereiste bibliotheken te installeren met behulp van de onderstaande opdracht:

sudo apt-get install zlib1g-dev libxml2-dev

Nadat u de bibliotheken hebt geïnstalleerd, gaat u verder en installeert u de LibXML Perl-module op de normale manier:

sudo cpan install XML::LibXML

Dat is het. Ik hoop dat dit je snel geholpen heeft om de kleine problemen met het installeren van de LibXML-module op Ubuntu 16.04 en andere versies te verhelpen.

Aanbevolen

Hoe standaardtoepassingen wijzigen in Ubuntu
2019
Krijg gecertificeerde Linux, AWS en meer met Linux Academy
2019
LibreOffice 5.0 uitgebracht! Bekijk de nieuwe functies
2019