gcc-3.4.0

Heidegger

Well-Known Member
Hi! Hat schon jemand auf den gcc-3.4.0 upgedatet und seine Welt neu gebaut? Irgendwelche Erfahrungen gemacht, die andere vielleicht teilen möchten? Auf freshports.org drängt sich das Update ja geradezu auf, kann nur nicht das Risiko einschätzen, möchte mir nicht meine Installation versauen.
 
Also ich habe heute noch mal den gcc-3.3.4 gebaut, er installiert sich unter /usr/local/bin als gcc33. Unter /usr/bin ist noch der "alte", systemeigene gcc Version 3.3 zu finden. Die Frage ist nun: Wie benutzt man den neuen gcc? Ich habe einfach mal unter /usr/bin die alten Dateien in gcc.old, g++.old und f77.old umbenannt und dann gcc, g++ und f77 auf die neuen Dateien unter /usr/local/bin gelinkt. Was ist mit dem cc unter /usr/bin, soll ich den auch verlinken? Und kann ich auf diese Weise die Welt neu bauen? Wie macht ihr das, wenn ihr gcc updatet?
 
Hm, wie mir scheint, spielt der gcc-Update für das Bauen der Ports, des Kernels und der Welt sowieso keine Rolle, da hierzu defaultsmäßig /usr/bin/cc verwendet wird, der nur für root ausführbar ist. Ein ausgezeichnetes Sicherheitskonzept, da es verhindert, daß Pakete mit einem möglicherweise korrumpierten gcc gebaut werden.
 
Heidegger: Deine Installation ist kaputt. /usr/bin/cc ist von jedem ausfuehrbar! Ich baue meine Ports schliesslich nicht als root, wie sollte das sonst anders gehen?

Wenn man Ports mit dem gcc34 kompilieren will, dann sollte ein 'make USE_GCC=34' genuegen. Falls nicht, dann eben 'make CC=gcc34 CXX=g++34' etc.

Um die Welt neu zu bauen: cd /usr/src && make CC=gcc34 world.

CC ist in allen Faellen ein Make-Variable, keine Shell-Variable.
 
Zurück
Oben