Installieren Sie devtools auf CentOS ohne Root-Berechtigung

Installieren Sie devtools auf CentOS ohne Root-Berechtigung

Ich möchte devtools auf einem Cluster installieren, auf dem CentOS 5.4 läuft (um eine höhere Version von gcc als die Standardversion zu erhalten. Ich brauche gcc>4.7, um einige C++11-Funktionen zu verwenden).

Ich habe jedoch keine Root-Berechtigung. Ist es möglich, devtools in meinem Benutzer-Home-Ordner zu installieren, ohne Root-Zugriff? Die inDasAntwort: Gehe davon aus, dass Root-Zugriff verfügbar ist. Vielen Dank für alle Informationen oder Links.

Antwort1

Ja, sicher. Allerdings gibt es ein paar Dinge, die man beachten sollte.

Sie sollten aus dem Quellcode kompilieren und Ihrem Home-Verzeichnis ein Präfix geben:

./configure --prefix=$HOME

Fügen Sie natürlich nach Bedarf Parameter hinzu. make installwird dann in /home/IhrVerzeichnis/bin, /home/IhrVerzeichnis/lib usw. installiert. Möglicherweise müssen Sie „ldconfig“ manuell in Ihrem Lib-Verzeichnis ausführen, um verkürzte symbolische Links zu Ihren Bibliotheken zu erstellen.

Fügen Sie in Ihrer Shell-Umgebung zunächst den Pfad zu Ihrem persönlichen „bin“-Verzeichnis hinzu, falls dies noch nicht geschehen ist. Fügen Sie beispielsweise Folgendes zu Ihrer .bashrc hinzu:

PATH=$HOME/bin:$PATH
LD_LIBRARY_PATH=$HOME/lib:$LD_LIBRARY_PATH
export PATH LD_LIBRARY_PATH

Dadurch wird sichergestellt, dass Ihre eigene Kopie von gcc zuerst gefunden wird; LD_LIBRARY_PATH tut dasselbe für Ihre eigenen dynamischen Bibliotheken.

Beachten Sie, dass neuere Versionen von gcc möglicherweise neuere Versionen von Binutils, dem Assembler und verschiedenen Bibliotheken erfordern, sodass Sie möglicherweise viel mehr als nur gcc haben. Außerdem halte ich es für empfehlenswert, zuerst nur den C-Compiler zu kompilieren (mit --enable-languages=C) und dann gcc mit sich selbst neu zu kompilieren, um den C++-Compiler zu kompilieren.

Schließlich kann das oben genannte mit vorhandenen C++-Systembibliotheken in Konflikt geraten; in der Vergangenheit hatte ich Probleme, C++-Bibliotheken, die mit unterschiedlichen gcc-Versionen kompiliert wurden, in meine Programme einzubinden. Bei C-Bibliotheken tritt dieses Problem normalerweise nicht auf.

Antwort2

ich glaube nicht, dass Sie GCC aktualisieren können, wenn Sie kein Root sind. Versuchen Sie, das RPM herunterzuladen und zu installieren, aber die Chancen sind sehr gering.

verwandte Informationen