GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Gcc-Kompilierung kann Suffix von Objektdateien nicht berechnen:kann nicht kompiliert werden

Dieses Problem wird durch ein Problem mit dem dynamischen Linkbibliothekspfad verursacht, wenn die Testprogramme versuchen, mit libmpc/libmpfr/libgmp zu verknüpfen.

Hängen Sie die Umgebungsvariable unten an, um ld zuzulassen Link gegen das richtige also Datei:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/mpc/lib/

Versuchen Sie dann erneut, gcc zu erstellen.


"Das Erstellen von GCC ist nicht trivial, aber nicht schwierig, wenn Sie die Anweisungen sorgfältig befolgen. Viele Leute versuchen überstürzt, es zu erstellen, ohne die Installationsdokumentation richtig zu lesen, und machen einen oder mehrere dieser häufigen Fehler:

  1. Führen Sie ./configure nicht aus dem gcc-Quellverzeichnis aus (dies wird nicht unterstützt) => Sie müssen configure von außerhalb des gcc-Quellverzeichnisses ausführen

  2. Hinweis:Wenn GCC dynamisch mit den erforderlichen Bibliotheken (GMP/MPFR/MPC) verknüpft ist, müssen sich die gemeinsam genutzten Bibliotheken im Pfad des dynamischen Linkers (LD_LIBRARY_PATH) befinden, sowohl beim Erstellen von gcc als auch bei Verwendung des installierten Compilers."

Einfaches Beispiel (ohne dynamischen Link zu GMP/MPFR/MPC):

tar xzf gcc-4.8.0.tar.gz
cd gcc-4.8.0
./contrib/download_prerequisites
cd ..
mkdir objdir
cd objdir
$PWD/../gcc-4.8.0/configure --prefix=/opt/gcc-4.8.0 
make
make install

Quellen:Advogato Doc -GNU Doc


Linux
  1. Linux – Verschiedene Formate von Objektdateien in Linux?

  2. Linux Objcopy-Befehlsbeispiele zum Kopieren und Übersetzen von Objektdateien

  3. nm :Befehl zum Auflisten der Symbole in Objektdateien.

  4. Statischer Link der gemeinsam genutzten Bibliotheksfunktion in gcc

  5. Verknüpfen von <iostream.h> unter Linux mit gcc

So kompilieren Sie Windows Visual C++-Code unter Linux

Kann nicht aufgeteilt werden, ein Byte-ähnliches Objekt ist erforderlich, nicht 'str'

FEHLER:ld.so:Objekt 'libgtk3-nocsd.so.0' aus LD_PRELOAD kann nicht vorab geladen werden

Überleben symbolische Linkdateien SVN?

Benennen Sie mehrere Dateien um, um gemeinsame Suffixe aus Dateinamen zu entfernen

Wie lade ich Dropbox-Dateien mit dem Befehl wget herunter?