Kompilieren des GCCs
-
Du brauchst noch einen Shell-Aufruf (falls das auf dem Mac genauso geht wie unter Linux):
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:Pfad/zu/den/gmp/libs:Pfad/zu/den/mpfr/libs
EDIT: Übrigens kannst du einstellen, dass nur Fortran kompiliert werden soll mit --enable-languages=fortran (vielleicht heißt es auch fort oder f oder was auch immer)
-
Danke erstmal für die Antworten.
Habe ein export durchgeführt, hat an der Situtation nichts geändert, ich erhalte nach wie vor denselben Fehler. Ebenfalls, wenn ich --enable-language=fortran beim configure script mit angebe, dann erhalte ich wieder denselben Fehler.
Kann man kontrollieren wohin die Dateien aus einem Finkpaket installiert werden? Ich möchte nämlich sämliche Binaries vom GCC gerne in einem bestimmten Ordner auf der Festplatte ablegen.
Persönlich finde ich den Ansatz des selber kompilierens besser, weshalb ich lieber die Fehlermeldung verstehen würde und was man dagegen unternehmen kann.
-
Ich habe mir ein komplettes GCC-Buildscript unter Linux erstellt, vielleicht könntest du das ja gebrauchen. Ich muss mal schauen, wann ich mal wieder Linux boote
.
-
HändyÄndy schrieb:
Kann man kontrollieren wohin die Dateien aus einem Finkpaket installiert werden? Ich möchte nämlich sämliche Binaries vom GCC gerne in einem bestimmten Ordner auf der Festplatte ablegen.
Ja. Aber es wäre sinnvoller, einfach Symlinks anzulegen, nachdem Du ohnehin alles in /sw liegen hast, ist Fink und der GCC ohnehin schön isoliert.
Persönlich finde ich den Ansatz des selber kompilierens besser
Mit Fink wird die GCC ja auch auf Deiner Box kompiliert. Nur dass Du eben eine vernünftige Paketverwaltung verwendest und nicht einfach wild irgendwelches Zeug unversioniert in der Weltgeschichte herumkopierst.
-
So, hier nun mein Linux-Linux Build-\1:
Du solltest also einen Ordner mit den im Kommentar angegebenen Unterordnern, die die Sourcedateien der jeweiligen Programme/Libraries enthalten, anlegen und ihn dem Script übergeben.
Da ist jetzt auch libelf für Link-Time-Optimization dabei, entferne sie einfach, da du ja GCC 4.3 verwendest.#!/bin/sh #Build with host=linux, target=linux: #Folders: binutils-src, gcc-src, gmp-src, mpfr-src, mpc-src, libelf-src export BUILDDIR=$1 cd $BUILDDIR mkdir Linux cd Linux mkdir gmp-dest mkdir mpfr-dest mkdir mpc-dest mkdir libelf-dest cd .. mkdir gcc cd gcc mkdir binutils-ll-dest mkdir gcc-ll-dest cd .. cd gcc/binutils-ll-dest ../../binutils-src/configure --prefix=$BUILDDIR/gcc/ll-gcc --enable-shared --enable-multiarch --program-prefix=ll- --enable-nls --enable-targets=all --disable-werror make -j 2 LDFLAGS=-ldl make -j 2 install cd ../.. cd Linux/gmp-dest ../../gmp-src/configure --prefix=$BUILDDIR/Linux/gmp-install make -j 2 make -j 2 install cd ../.. cd Linux/mpfr-dest ../../mpfr-src/configure --with-gmp=$BUILDDIR/Linux/gmp-install --prefix=$BUILDDIR/Linux/mpfr-install make -j 2 make -j 2 install cd ../.. cd Linux/mpc-dest ../../mpc-src/configure --with-gmp=$BUILDDIR/Linux/gmp-install --with-mpfr=$BUILDDIR/Linux/mpfr-install --prefix=$BUILDDIR/Linux/mpc-install make -j 2 make -j 2 install cd ../.. cd Linux/libelf-dest ../../libelf-src/configure --prefix=$BUILDDIR/Linux/libelf-install make -j 2 make -j 2 install cd ../.. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$BUILDDIR/Linux/gmp-install/lib:$BUILDDIR/Linux/mpfr-install/lib:$BUILDDIR/Linux/mpc-install/lib:$BUILDDIR/Linux/libelf-install/lib cd gcc/gcc-ll-dest ../../gcc-src/configure --enable-languages=c,c++ --prefix=$BUILDDIR/gcc/ll-gcc --enable-threads=posix --program-prefix=ll- --enable-nls --with-gmp=$BUILDDIR/Linux/gmp-install --with-mpfr=$BUILDDIR/Linux/mpfr-install --with-mpc=$BUILDDIR/Linux/mpc-install --with-libelf=$BUILDDIR/Linux/libelf-install --enable-lto make -j 2 make -j 2 install cd ../..
-
Habe mir gerade fink installiert und leider gibt es dort keinen gcc-4.3.5.
-
Doch. Das Paket gcc43 ist genau die 4.3.5er-GCC.
-
Mmmmh
apt-cache search gcc
gcc4.0 - [virtual package representing the gcc 4.0.1 compiler]
gcc4.2 - [virtual package representing the gcc 4.2.1 compiler]
-
Ja, sagte ich doch. Binärpaket gibt es da keines.
Befolge doch bitte die verlinkte Anleitung, wenn Du
fink install gcc43
machst, sollte das dann gehen.
-
Also bei mir kennt er das Paket nicht:
sudo fink install gcc43
Password:
Scanning package description files..........
Information about 310 packages read in 1 seconds.
Failed: no package found for specification 'gcc43'!
-
Ansonsten gibt es bei den Macports ein gcc43 Paket: http://trac.macports.org/browser/trunk/dports/lang/gcc43/Portfile