GNU/Linux >> Tutoriels Linux >  >> Linux

Correction de l'erreur de démarrage OpenCA Impossible de localiser version.pm

Eh bien, j'ai reçu une erreur "install_driver(Pg) failed :Can't locate version.pm ” lors du démarrage du démon OpenCA 1.5.1 sur CentOS. Ce didacticiel explique comment corriger l'erreur de démarrage OpenCA Impossible de localiser version.pm. Avant de parler de la solution, jetez un œil au message d'erreur complet.

Démarrage du démon OpenCA :

# ./etc/init.d/openca start

Bien que la commande ci-dessus n'ait généré aucun message, j'ai pu trouver une erreur détaillée dans var/openca/log/stderr.log . Ci-dessous, un aperçu de celui-ci.

install_driver(Pg) a échoué :Impossible de localiser version.pm dans @INC (@INC contient :/home/openca/lib/openca/perl_modules/perl5/x86_64-linux-thread-multi /home/openca/lib /openca/perl_modules/perl5 /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) à /home/openca/lib/openca/perl_modules/perl5/x86_64-linux-thread-multi/DBD/Pg.pm ligne 19.BEGIN a échoué -- la compilation a été abandonnée à /home/openca/lib/openca/perl_modules/ perl5/x86_64-linux-thread-multi/DBD/Pg.pm line 19. La compilation a échoué dans require at (eval 288) line 3. Peut-être qu'un module requis par DBD ::Pg n'a pas été entièrement installé dans /home/openca /lib/openca/perl_modules/perl5/OpenCA/DBI.pm ligne 914. Échec de la compilation requise à /home/openca/etc/openca/openca_start ligne 66.

Le message d'erreur indique qu'il n'a pas pu localiser version.pm file et peut-être un module qui DBD::Pg n'a pas été installé complètement. Installons DBD::Pg .

Installer DBD::Pg à l'aide de cpan

cpan[1]> installer DBD::Pg

Cependant, cpan échec de l'installation de DBD::Pg et quitté avec le message d'erreur ci-dessous.

Impossible de charger DBI::DBD - le module DBI est-il installé ? Aucun 'Makefile' créé 'YAML' non installé, ne stockera pas l'état persistant TURNSTEP/DBD-Pg-3.7.4.tar.gz /usr/bin/perl Makefile.PL -- NOT OKRunning make test Make a eu quelques problèmes, a gagné 't testL'exécution de make install Make a rencontré des problèmes, ne sera pas installé Impossible de lire le fichier de métadonnées. Revenir à d'autres méthodes pour déterminer les prérequis. 

J'ai donc dû installer DBI::DBD module avant d'installer DBD::Pg . Continuons et installons DBI::DBD

Installer DBI::DBD

cpan> install DBI::DBDAjout des informations d'installation à /usr/lib64/perl5/perllocal.pod TIMB/DBI-1.640.tar.gz /usr/bin/make install -- OK

Oui, j'ai maintenant installé DBI::DBD module, réessayons DBD::Pg installation via cpan .

cpan> installer DBD::Pg

Ah ! une autre erreur :

cp lib/Bundle/DBD/Pg.pm blib/lib/Bundle/DBD/Pg.pmcp Pg.pm blib/lib/DBD/Pg.pm/usr/bin/perl -p -e "s/~ DRIVER~/Pg/g; s/^do\(/dontdo\(/" /usr/local/lib64/perl5/auto/DBI/Driver.xst> Pg.xsi/usr/bin/perl /usr/share/ perl5/vendor_perl/ExtUtils/xsubpp -typemap /usr/share/perl5/ExtUtils/typemap Pg.xs> Pg.xsc &&mv Pg.xsc Pg.cgcc -c -I/usr/include -I/usr/local/lib64 /perl5/auto/DBI -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPGLIBVERSION=90223 -DPGDEFPORT=5432 -O2 -g -pipe -Mur -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc -DVERSION=\"undef\" -DXS_VERSION=\"undef\" -fPIC "-I/usr/lib64/perl5/CORE" Fichier Pg.cIn inclus à partir de Pg.xs:14 :0:Pg.h:36:22 :erreur fatale :libpq-fe.h :aucun fichier ou répertoire de ce type #include "libpq-fe.h" ^compilation terminated.make:*** [Pg.o] Erreur 1 TURNSTEP/DBD-Pg-3.7.4.tar.gz /usr/bin/make -- NOT OKRunning make test Impossible de tester sans succès makeL'exécution de make install Make a renvoyé un état incorrect, l'installation semble impossibleÉchec lors de cette commande :TURNSTEP/DBD-Pg-3.7.4.tar.gz :make NO

Maintenant, l'erreur est "erreur fatale :libpq-fe.h :aucun fichier ou répertoire de ce type “. Cela signifie que j'ai dû installer un paquet ou une bibliothèque qui fournit libpq-fe.h dossier. Après avoir cherché sur Google, j'ai compris 'libpg-dev ‘ est la bibliothèque, mais c'est pour les machines Ubuntu et Debian. Ainsi, le package correspondant pour CentOS est 'postgresql-devel ‘.

Installer postgresql-devel à l'aide de YUM

# yum install postgresql-devel:::::::::::::::::Installed :postgresql-devel.x86_64 0:9.2.23-3.el7_4Complete !

D'accord. Espérons que cpan devrait maintenant installer DBD::Pg sans aucun probléme. Allons vérifier.

Réinstaller DBD::Pg à l'aide de cpan

cpan[3]> install DBD::PgRunning install for module 'DBD::Pg'Running make for T/TU/TURNSTEP/DBD-Pg-3.7.4.tar.gz A déjà été déballé dans le répertoire /root /.cpan/build/DBD-Pg-3.7.4-JtTHAeImpossible de créer :erreur inconnueL'exécution du test de création ne peut pas être testée sans succès. 

Quoi! cpan dit que l'installation semble impossible ? Non, installons-le manuellement. Pour ce faire, je devais aller sur .cpan répertoire situé sous le domicile de l'utilisateur et localisez DBD-PG téléchargé par cpan.

# cd /root/.cpan/build/DBD-Pg-3.7.4-ScxNAT

Créons Makefile maintenant.

# perl Makefile.PLConfiguring DBD::Pg 3.7.4Version PostgreSQL :90223 (port par défaut :5432)POSTGRES_HOME :(non défini)POSTGRES_INCLUDE :/usr/includePOSTGRES_LIB :/usr/lib64OS :linuxVérification si votre kit est complet.. .Ça a l'air bienUtiliser DBI 1.64 (pour perl 5.016003 sur x86_64-linux-thread-multi) installé dans /usr/local/lib64/perl5/auto/DBI/Writing Makefile for DBD::Pg

Frais. Qu'en est-il de la fabrication ?

#makechmod 755 blib/arch/auto/DBD/Pg/Pg.socp Pg.bs blib/arch/auto/DBD/Pg/Pg.bschmod 644 blib/arch/auto/DBD/Pg/Pg.bsManifying blib /man3/Bundle::DBD::Pg.3pmManifying blib/man3/DBD::Pg.3pm

Encore cool, qu'en est-il de l'installation ?

# make installFiles found in blib/arch :installation de fichiers dans blib/lib dans l'arbre de bibliothèque dépendant de l'architectureInstallation /usr/local/lib64/perl5/auto/DBD/Pg/Pg.soInstallation /usr/local/lib64/perl5/ auto/DBD/Pg/Pg.bsInstallation /usr/local/lib64/perl5/DBD/Pg.pmInstallation /usr/local/lib64/perl5/Bundle/DBD/Pg.pmInstallation /usr/local/share/man/man3/ Bundle ::DBD::Pg.3pmInstallation de /usr/local/share/man/man3/DBD::Pg.3pmAjout des informations d'installation à /usr/lib64/perl5/perllocal.pod

Oui. J'ai maintenant installé avec succès "DBD::Pg ”module. Maintenant, j'ai démarré le démon OpenCA et cela a fonctionné sans problème.

J'espère que cela aidera quelqu'un là-bas.


Linux
  1. Comment réparer l'erreur d'échec d'authentification Cron sous Linux ?

  2. La vérification de la signature a échoué sur la clé publique SPKAC - Correction de l'erreur OpenCA

  3. Comment réparer l'erreur de l'éditeur Vi / Vim — E319 :Désolé, la commande n'est pas disponible dans cette version

  4. Impossible de se connecter au serveur MySQL erreur 111

  5. erreur ldconfig :n'est pas un lien symbolique

Comment réparer une erreur de conversion avec Calibre

Correction de l'erreur "Impossible d'écrire dans le dossier d'application" dans Vuze BitTorrent Client

Corrigez l'erreur impossible de trouver la commande hwmatch sur Grub

Erreur de dépassement de la limite de bande passante :comment puis-je résoudre ce problème ?

Comment puis-je créer un lien vers une version spécifique de glibc ?

Erreur lors de l'utilisation d'une version plus récente de la glibc