GCC kann nicht finden, GMP, MPFR und MPC-Bibliotheken
Ich versuche, um cross-kompilieren GCC unter Mac OS 10.5.7. Ich habe diesen Befehl zum konfigurieren der GCC nach der Installation von GMP, MPFR und 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
Bekam ich diese Fehlermeldung:
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.
Warum konnte GCC finden, der Header für GMP, MPFR und MPC, aber nicht die Bibliotheken?
- Ich hatte das gleiche problem, und versuchte, Linux From Scratch D:
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich vermute, dass das problem sein kann, sind die Bibliotheken für 32-bit, wenn Sie versuchen, bauen Sie eine 64-bit-compiler, oder Umgekehrt.
War ich in der Lage zu bauen GCC 4.5.1 auf MacOS X 10.6.4 vor kurzem, aber ich baute und installierte die GMP, MPFR und MPC Bibliotheken selbst - in
/usr/gnu64
(eine nicht-standard-Speicherort, dass ich für Sachen, die ich installieren für meinen eigenen nutzen). Ich habe auch die Konfigurations-option:zu zwingen, eine 64-bit-build. Ich hatte ähnliche Probleme unter Linux (plus ein problem mit einem regex in opt-Funktionen.awk - einfach fixiert mit zwei back-slashes vor einer offenen Klammer) und fand, dass es updates für die MPFR und MPC Bibliotheken gebaut, seit ich auf MacOS X:
Seit ich dieses schrieb, ich habe mich verändert, meine Methodik etwas. Was ich jetzt Tue, ist dokumentiert in Installieren Sie GNU GCC auf dem Mac. Im Grunde genommen, bekomme ich die aktuellen Versionen von GMP, MPC, MPFR und setzen Sie Ihre source-code in die GCC-source-Verzeichnis, und lassen Sie GCC kompilieren der Bibliotheken für sich selbst. Dies macht die GCC-deal mit dem Auffinden der Bibliotheken.
CC=gcc -m64'
und es funktionierteCC="gcc -m64" ../gcc-4.5.1/configure ...
oder geben Sie Sie als argument:../gcc-4.5.1/configure CC="gcc -m64" ...
. Beide arbeiten; ich in der Regel verwenden Sie es als eine environment-variable (vor dem Befehl). Wenn Sie ein sea-shell (tcsh, usw.), benutzen Sie das argument-form.Sollten Sie verwenden
statt
./configure
Skript besagt, dass--with-mpc=PATH
istEquivalent to --with-mpc-include=PATH/include plus --with-mpc-lib=PATH/lib
, und der exakt gleiche Wortlaut für--with-gmp
und--with-mpfr
Ich hatte das gleiche problem versucht zu kompilieren gcc-4.6.0 auf OX 10.6.6. Ich war mit gmp-4.3.2 ; stattdessen gmp-5.0.1, das configure-Skript angezeigt wird, richtig zu erraten, "CC=gcc -std=gnu99 CFLAGS=-O2 -pedantic-m64 -mtune=core2 -march=core2" und übergibt an mpfr (3.0.1) und mpc (0.9) , so dass jeder, der diese oder neuere Versionen sollten nicht diesen Fehler bekommen.
Ich würde vorschlagen, die Installation von gmp, mpfr und mpc, indem Sie Sie von Ihren websites. Dann laufen
./configure
(in den Ordner, wo die Dateien heruntergeladen) undsudo make install
.GCC kompilieren sollte dann auf Mac OSX (mountain lion).
Beachten Sie, dass die mpc hängt davon ab, mpfr und gmp.
Habe ich diese kompilieren Ritzel kernel auf Mac OSX.
Mit mac ports mpfr, libmpc und gmp installiert, ich war in der Lage zu Heften Sie diese auf das configure-Skript:
Diese war die Erstellung eines ti msp430 toolchain.
Ich löste ein ähnliches problem. Da meine CPU ist ein x86_64 aber mein OS ist 32bit, wenn ich installieren GMP(5.0.2), es versucht zu konfigurieren, in 64bit. Also habe ich neu kompiliert mein GMP mit Konfiguration wie ABI=32 ./konfigurieren Sie dann... GCC-problem verschwunden.
Hatte ähnliches problem in Ubuntu 16.04 64 bit. Gelöst durch Verwendung mpc-1.0.1.tar.gz, mpfr-3.1.6.tar.xz-und gmp-6.1.2.tar.xz