Wie werden GCC-Laufzeitpfade bereitgestellt?

Wie werden GCC-Laufzeitpfade bereitgestellt?

Ich habe gerade gcc 7 in einem beliebigen Ordner installiert. Ich kann mit dem vollständigen Pfad zum Bin-Ordner meiner neuen gcc 7-Installation kompilieren, aber wenn ich versuche, mein Programm auszuführen, beschwert es sich über fehlende Bibliotheken. Wie muss ich das beheben? Muss ich den Pfad der Bibliotheksdateien irgendwie angeben? Wie geht das?

Antwort1

Wenn Ihre Carbitray-Compiler-Installation (oder Toolchain) einen lib-Ordner enthält, können Sie versuchen, den Bibliothekspfad festzulegen (siehehttp://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html)

$ export LD_LIBRARY_PATH=/path/to/your/compiler/lib

oder führen Sie die Binärdatei wie folgt aus:

$ LD_LIBRARY_PATH=/path/to/your/compiler/lib ./yourapp

Dies ist jedoch möglicherweise nur ein Teil Ihres Problems. Wenn die Bibliotheken Ihres Compilers/Ihrer Toolchain auch zusätzliche gemeinsam genutzte Bibliotheken verwenden, müssen Sie diese ebenfalls installieren.

Ein richtiges Toolchain-Paket sollte einen Ordner wie diesen enthaltenx86_64-linux-gnu/sysroot/lib. Dieser Ordner sollte die für Ihre kompilierte Anwendung erforderlichen gemeinsam genutzten Bibliotheken enthalten.

verwandte Informationen