Construire GCC nécessite de GMP 4.2+, MPFR 2.3.1+ et MPC 0.8.0+
J'ai téléchargé GCC 4.5 à partir de http://www.netgull.com/gcc/releases/gcc-4.5.0/ mais quand j'essaie d'installation /construction, je suis d'erreur ci-dessous:
Linux:>~/shared_scripts/bin/gcc/gcc-4.5.0 1040> /x/home/prakash_satya/shared_scripts/bin/gcc/gcc-4.5.0/configure CC="gcc -m64" --prefix=/x/home/prakash_satya/shared_scripts/bin/gcc/gcc-4.5.0 --with-gmp-lib=/usr/lib64 --with-mpfr-lib=/usr/lib64 --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-languages=c,c++
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln works... yes
checking whether ln -s works... yes
checking for a sed that does not truncate output... /bin/sed
checking for gawk... gawk
checking for gcc... gcc -m64
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc -m64 accepts -g... yes
checking for gcc -m64 option to accept ISO C89... none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for gnatbind... no
checking for gnatmake... no
checking whether compiler driver understands Ada... no
checking how to compare bootstrapped objects... cmp --ignore-initial=16 $$f1 $$f2
checking for objdir... .libs
checking for the correct version of gmp.h... no
configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+.
Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify
their locations. Source code for these libraries can be found at
their respective hosting sites as well as at
ftp://gcc.gnu.org/pub/gcc/infrastructure/. See also
http://gcc.gnu.org/install/prerequisites.html for additional info. If
you obtained GMP, MPFR and/or MPC from a vendor distribution package,
make sure that you have installed both the libraries and the header
files. They may be located in separate packages.
Linux:>~/shared_scripts/bin/gcc/gcc-4.5.0 1041>
Suivantes libs sont présents dans les différents répertoires
/usr/lib/libgmp.a
/usr/lib64/libgmp.a
/usr/lib/libmpfr.a
/usr/lib64/libmpfr.a
Je n'ai pas libmpc.une bibliothèque installée n'importe où dans des boîtes.
Basée sur l'erreur comment puis-je savoir :
a) quelle est la version actuelle de libgmp.un et libmpfr.une sont installés.
b) S'ils sont de mauvaise version comment puis-je déployer ma propre version sans perturber le courant?
- essayez d'exécuter
./contrib/download_prerequisites.sh
à partir de la source de gcc dir. Il a travaillé pour moi (pour la version actuelle de gcc si (gcc-4.7
) - Le script ne semble plus avoir un .extension sh:
./contrib/download_prerequisites
. - download_prerequisites.sh a été ajouté à 4.6 il ressemble. 4.5.0 ne l'a pas.
Vous devez vous connecter pour publier un commentaire.
Dans le répertoire où j'ai ces bibliothèques installées (
/usr/gnu64/lib
), j'ai aussi unlibgmp.la
fichier (etlibmpc.la
etlibmpfr.la
fichiers), qui contiennent le texte lisible. La version de l'information est là, mais ce n'est pas tout à fait la même que la "version du produit'. Elle parle d'un lien de compatibilité à la place.J'étais en train d'enquêter sur la version que j'avais, et l'étrange solution je suis venu avec était de lancer le GCC (4.6.1) que j'ai construit avec la
-v
option. En partie, il a dit:Il s'avère que j'ai BPF 5.0.2 installé (mais je l'ai construite avec GCC 5.0.1), et MPFR 3.1.0 (mais je l'ai construite avec GCC 3.0.0) et le CPP de 0,9 (mais je l'ai construite de GCC avec la 0.8.2). Le décalage vient à propos, car j'ai essayé de compiler et d'installer GCC 4.6.2 et probablement nécessaire les nouvelles versions. (Je n'ai pas réussi, mais c'est une autre histoire.)
- Je installer mon custom-built bibliothèques dans
/usr/gnu64/lib
, et indiquer à GCC qui est là pour trouver avec les options de configuration--with-mpfr=/usr/gnu64/lib
,--with-gmp=/usr/gnu64/lib
,--with-mpc=/usr/gnu/64/lib
. Ces chemins sont câblés dans GCC et il fonctionne à partir de là../configure --help
de sortie pour plus d'informations.ln -s gmp-6.0.0 gmp; ln -s mpfr-3.1.2 mpfr; ln -s mpc-1.0.2 mpc
. Puis-je exécuter GCC configurer et de construire, et GCC construit ces bibliothèques aussi.À l'intérieur du répertoire de gcc, exécutez cette commande:
Après le script, GMP, MPFR et MPC sera prêt à l'emploi. Continuer avec
./configure
.sudo
, et cela a résolu mes malheursJ'ai eu le même problème en essayant d'installer/compiler GCC 4.8.1. Voici comment j'ai résolu:
Dans Debian, il suffit de lancer ces deux commandes:
sudo yum install libmpc-devel
./configure
, voir gcc.gnu.org/wiki/FAQ#configuresudo yum install libmpc-devel
J'ai eu le même problème de compilation GCC 4.9 branche.
Pour Red Hat et Fedora en fonction des systèmes, exécutez la commande suivante:
sudo yum install gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel
Cela permettra d'installer GNU multiple precision (MP), les bibliothèques pour les entiers, des flottants, des nombres complexes.