2015-11-15 4 views
2

Je tente d'installer le package Perl Math :: GMP sur OS X El Capitan.Installer Perl Math :: GMP sur OSX

J'ai eu un ordinateur où cela a fonctionné sans problème - mais un deuxième ordinateur est en cours d'exécution dans le problème suivant:

Le module Perl Math :: GMP requiert la bibliothèque C GMP, donc je l'ai fait brew install gmp

Ce GMP installé, y compris le fichier suivant:

/usr/local/include/gmp.h 

Mais le package d'installation ne parvient toujours prétendre que je n'ai pas installé gmp:

$ sudo perl -MCPAN -e shell 
cpan[1]> install Math::GMP 
Reading '/Users/chaosadmin/.cpan/Metadata' 
Database was generated on Sat, 14 Nov 2015 09:17:02 GMT 
Running install for module 'Math::GMP' 
Checksum for /Users/me/.cpan/sources/authors/id/S/SH/SHLOMIF/Math-GMP-2.11.tar.gz ok 
Scanning cache /Users/me/.cpan/build for sizes 
............................................................................DONE 
'YAML' not installed, will not store persistent state 
Configuring S/SH/SHLOMIF/Math-GMP-2.11.tar.gz with Makefile.PL 
Can't link/include C library 'gmp.h', 'gmp', aborting. 
No 'Makefile' created SHLOMIF/Math-GMP-2.11.tar.gz 
    /usr/bin/perl Makefile.PL -- NOT OK 
Failed during this command: 
SHLOMIF/Math-GMP-2.11.tar.gz     : writemakefile NO -- No 'Makefile' created 

La ligne évidente est: Can't link/include C library 'gmp.h', 'gmp', aborting.

Mais je certainement « gmp.h » installé dans /usr/local/include/gmp.h Je ne suis pas sûr pourquoi il ne pas installer sur ce système d'exploitation X El Capitan Machine (il a bien fonctionné sur mon autre).

Dans le shell CPAN je:

look Math::GMP 

et mis à jour le Makefile.PL de débogage:

check_lib_or_exit(
    header => 'gmp.h', 
    lib => 'gmp', 
    debug => 'true' 
); 

qui affiche l'erreur suivante lors de l'exécution perl Makefile.PL

# /usr/bin/cc -arch i386 -arch x86_64 -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -fstack-protector -arch i386 -arch x86_64 -fstack-protector assertlibD4RJzZEa.c -o assertlibwGFzIVsM 
assertlibD4RJzZEa.c:1:10: fatal error: 'gmp.h' file not found 

comprennent

+0

Très probablement,/usr/n'est pas local dans la liste par défaut des lieux du compilateur recherche Utilisez la fonction 'look' à l'invite cpan pour obtenir un shell avec le module décompressé, et voyez si la documentation dit quoi que ce soit à propos de l'utilisation de' Makefile.PL' pour lui indiquer où trouver gmp. –

+0

Ok - J'ai été capable d'ajouter 'debug' 'true' pour la ligne qui échoue dans Makefile.PL - mais je ne le corrige pas pour moi. –

+0

Rien dans l'installation ou README sur la façon de traiter cela. –

Répondre

-1

sur CentOS:

Il suffit d'installer ceci: yum install * gmp -y

Bonne chance :)

+1

Cela semble hors de propos car la question d'origine concerne Mac OS. – vektor