web-dev-qa-db-fra.com

ne peut pas installer le module cpan GD

Depuis que j’ai échoué à installer Image :: Magick sur mon serveur Ubuntu Ubuntu 14.04.2 LTS non-graphique (lisez-le à ce sujet ici ), j’ai essayé d’installer un autre outil de gestion d’images pouvant être utilisé à partir d’un ordinateur de poche. Perl-script: Gd . Mais j'ai aussi échoué à l'installer:

~# cpan install Gd
Reading '/root/.cpan/Metadata'
  Database was generated on Thu, 21 May 2015 22:17:02 GMT
Running install for module 'Gd'
Checksum for /root/.cpan/sources/authors/id/L/LD/LDS/Gd-2.56.tar.gz ok
Configuring L/LD/LDS/Gd-2.56.tar.gz with Build.PL
Configuring for libgd version 2.1.1-dev@.
Checking for stray libgd header files...none found.

Unknown option: installdirs
Usage: Perl Build.PL [options]

Configure Gd module.

 Options:
     -options       "JPEG,FT,PNG,GIF,XPM,ANIMGIF"   feature options, separated by commas
     -lib_Gd_path   path            path to libgd
     -lib_ft_path   path            path to Freetype library
     -lib_png_path  path            path to libpng
     -lib_jpeg_path path            path to libjpeg
     -lib_xpm_path  path            path to libxpm
     -lib_zlib_path path            path to libpng
     -ignore_missing_Gd             Ignore missing or old libgd installations and try to compile anyway

If no options are passed on the command line.  The program will
attempt to autoconfigure itself with the gdlib-config program (present
in Gd versions 2.0.27 or later).  Otherwise it will Prompt for these
values interactively.
Warning: No success on command[/usr/bin/Perl Build.PL --installdirs site]
  LDS/Gd-2.56.tar.gz
  /usr/bin/Perl Build.PL --installdirs site -- NOT OK

Je pense que le problème commence par Checking for stray libgd header files...none found., mais je n'ai aucune idée de ce que j'ai fait de mal ou de ce que je pourrais faire pour l'améliorer.

S'il vous plaît aider!


supplément (2015-09-02)

J'ai l'indice pour installer libgd-Gd2-Perl (Voir la réponse des poussins):

apt-get install libgd-Gd2-Perl

J'ai suivi cette instruction (en tant que root), mais cela n'a rien changé du tout. Lorsque j'ai exécuté cpan install Gd, j'ai exactement les mêmes messages que ceux énumérés ci-dessus.


supplément (2015-09-28)

Un autre indice était d'installer libgd-Perl:

apt-get install libgd-Perl

Lorsque je l'ai fait, le package précédemment installé libgd-Gd2-Perl a été automatiquement supprimé. Une fois l'installation terminée, j'ai essayé d'installer Gd avec la commande

cpan install Gd  

Et à la fin, j'ai reçu exactement le même message d'erreur qu'en mai et il y a trois semaines:

Warning: No success on command[/usr/bin/Perl Build.PL --installdirs site]
  LDS/Gd-2.56.tar.gz
  /usr/bin/Perl Build.PL --installdirs site -- NOT OK
2

C'est un bogue connu et ouvert, lisez here , et je peux reproduire cette erreur.

J'ai copié le texte suivant de ici , tous les crédits vont à @ Schwern .

Build.PL tente d'appeler une fonction appelée Prompt mais elle n'existe pas. En effet, ils ont récemment basculé les systèmes de compilation d'ExtUtils :: MakeMaker (Makefile.PL) vers Module :: Build (Build.PL), mais ils n'ont pas entièrement converti le programme. J'ai rapporté le bug .

La plupart des gens ne le remarquent pas parce que l'invite n'est nécessaire que si D.ieu ne peut pas se configurer. Pour ce faire, il recherche le programme gdlib-config. Si cela ne peut pas être trouvé, ou si cela ne fonctionne pas, il vous demandera votre configuration gdlib. Il est préférable de laisser gdlib-config s'en charger. Le meilleur moyen de résoudre ce problème est de s’assurer que gdlib-config est quelque part dans votre chemin PATH et que gdlib-config --all fonctionne.

Sinon, remplacez toutes les instances de Prompt par Module::Build->Prompt et cela devrait fonctionner.

Et voici le code problématique dans Build.pl

my $PREFIX = $lib_Gd_path;
if( ! defined($lib_Gd_path) )
{
  warn "\n";
  $PREFIX = Prompt('Where is libgd installed?','/usr/lib');
}

et ici

my ($JPEG, $FT, $XPM, $GIF,$ANIMGIF,$UNCLOSEDPOLY,$FONTCONFIG,$PNG,$FTCIRCLE,$VERSION_33);
if( defined($options) )
{
  $JPEG      = $options =~ m/JPEG/i;
  $FT        = $options =~ m/FT|FREETYPE/i;
  $XPM       = $options =~ m/XPM/i;
  $GIF       = $options =~ m/GIF/i;
  $PNG       = $options =~ m/PNG/i;
  $ANIMGIF   = $GIF && $options =~ m/ANIMGIF/i;
  $VERSION_33= $options =~ m/VERSION_33/i;
  $UNCLOSEDPOLY  = $options =~ m/UNCLOSEDPOLY/i;
  $FONTCONFIG  = $options =~ m/FONTCONFIG/i;
  $FTCIRCLE  = $options =~ m/FTCIRCLE/i;
}
else
{
    warn "\nPlease choose the features that match how libgd was built:\n";
    $JPEG    = lc Prompt('Build JPEG support?','y') eq 'y';
    $PNG     = lc Prompt('Build PNG support?','y') eq 'y';
    $FT      = lc Prompt('Build FreeType support?','y') eq 'y';
    $GIF     = lc Prompt('Build GIF support?','y') eq 'y';
    $ANIMGIF = $GIF && lc Prompt('Build support for animated GIFs?','y') eq 'y';
    $XPM     = $^O !~ /^freebsd|MSWin32$/ && lc Prompt('Build XPM support?','y') eq 'y';
}

etc.

2
A.B.