Question

Je suis en train de traverser décompiler GCC sous Mac OS 10.5.7. J'ai utilisé cette commande pour configurer GCC après l'installation GMP, MPFR et MPC:

../gcc-4.5.0/configure --target=$i586-elf --prefix=/usr/local/cross \
    --disable-nls \
    --enable-languages=c,c++,fortran,java,objc,obj-c++,treelang,ada \
    --without-headers --with-libiconv-prefix=/opt/local --with-gmp=/usr/local \
    --with-mpfr=/usr/local --with-mpc=/usr/local

Je suis cette erreur:

checking for the correct version of gmp.h... buggy but acceptable
checking for the correct version of mpfr.h... yes
checking for the correct version of mpc.h... yes
checking for the correct version of the gmp/mpfr/mpc libraries... 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.

Pourquoi pourrait trouver du CCG les en-têtes GMP, MPFR et MPC, mais pas les bibliothèques?

Était-ce utile?

La solution

Je soupçonne que le problème peut être que les bibliothèques sont 32 bits lorsque vous essayez de construire un compilateur 64 bits, ou vice versa.

j'ai pu construire GCC 4.5.1 MacOS X 10.6.4 récemment, mais je construit et installé le GMP, MPFR et MPC me bibliothèques - dans /usr/gnu64 (un emplacement non standard que j'utilise pour des trucs que j'installe pour mon propre bénéfice). J'ai aussi utilisé l'option de configuration:

CC='gcc -m64'

pour forcer une accumulation de 64 bits. J'ai eu des problèmes similaires sur Linux (plus un problème avec un regex dans opt-functions.awk - facilement fixe avec deux barres obliques inverses devant une accolade ouverte) et a constaté qu'il y avait des mises à jour des bibliothèques MPFR et MPC depuis que je construit sur MacOS X:

  • GMP 5.0.1 (au lieu de 4.2.4)
  • MPC 0.8.2 (au lieu de 0.8.1)
  • MPFR 3.0.0 (au lieu de 2.4.2)

Depuis que j'ai écrit cela, je l'ai changé un peu ma méthodologie. Ce que je fais maintenant est documenté dans Installer GNU GCC sur Mac . Au fond, je reçois les versions actuelles de GMP, MPC, MPFR et mettre leur code source dans le répertoire source de GCC, et laissez-GCC compiler les bibliothèques pour lui-même. Cela fait beaucoup de GCC à localiser les bibliothèques.

Autres conseils

Vous devez utiliser

with-gmp=/usr/local/include \
    --with-mpfr=/usr/local/include --with-mpc=/usr/local/include

au lieu de

with-gmp=/usr/local \
    --with-mpfr=/usr/local --with-mpc=/usr/local

J'ai eu le même problème en essayant de gcc-4.6.0 sur la compilation OX 10.6.6. J'utilisais gmp-4.3.2; en utilisant à la place gmp-5.0.1, le script de configuration semble deviner correctement "CC = gcc std = gnu99 CFLAGS = -O2 -pedantic -m64 -mtune = Core2 -march = Core2", et passe que sur mpfr (3.0. 1) et mpc (0,9), de sorte que toute personne utilisant les versions les plus récentes ou ces ne devraient pas obtenir cette erreur.

Je suggère d'installer gmp, et mpfr mpc en les téléchargeant à partir de leurs sites Web. Ensuite, exécutez ./configure (dans le dossier où les fichiers téléchargés) et sudo make install.

GCC devrait compiler puis sur Mac OS X (lion de montagne).

Notez que mpc dépend de mpfr et gmp.

Je servi pour la compilation pignon noyau sur Mac OSX.

Avec les ports mac Mpfr, libmpc et installé GmP, j'ai pu virer de bord sur ce script configure:

--with-mpc=/opt/local/var/macports/software/libmpc/0.8.2_0/opt/local
--with-gmp=/opt/local/var/macports/software/gmp/5.0.1_0/opt/local
--with-mpfr=/opt/local/var/macports/software/mpfr/3.0.0-p8_0/opt/local 

Ce fut d'établir une MSP430 toolchain.

Je viens de résoudre un problème similaire. Depuis mon CPU est x86_64 mais mon OS est 32bit, quand j'installe GMP (5.0.2), il tente de configurer en 64bit. Donc, je recompilé mon GMP avec la configuration comme ABI = 32 ./configure ... alors ce problème GCC a disparu.

avait un problème similaire dans Ubuntu 16.04 64 bits. Résolu en utilisant MPC-1.0.1.tar.gz, mpfr-3.1.6.tar.xz et gmp-6.1.2.tar.xz

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top