Ich arbeite an einem Projekt und wollte einige C11-Funktionen für C verwenden. Um diese Funktionen nutzen zu können, ist GCC 4.7 erforderlich. Deshalb bin ich zu synaptic gegangen und habe 4.7 nachgeschlagen. Ich habe also die Pakete gcc-4.7-base gefunden installiert es [1].
Nun, da gcc-4.7-base installiert ist, habe ich erwartet, dass ich 4.7 verwenden kann, aber nein, wenn ich es tue gcc --version
, wird 4.6.3 noch mehr angezeigt, wenn ich versuche, 4.7 (via /usr/bin/gcc-4.7
) direkt aufzurufen, existiert es nicht. obwohl eine gcc-4.6
ausführbare Datei existiert.
Wie "aktiviere" ich GCC 4.7? Ich habe hier gelesen , du machst ein paar verrückte Sachen damit update-alternatives
, aber es funktioniert nicht für mich, da die gcc-4.7
ausführbare Datei auf meinem Computer nicht existiert.
Anmerkungen: 1. Ich habe auch gcc-4.6-base gesehen, also dachte ich, ich würde es deinstallieren, aber synaptic hat versucht, jedes von mir installierte Paket zu entfernen und eine Java-Laufzeit zu installieren. Aus offensichtlichen Gründen habe ich beschlossen, es nicht zu entfernen.
quelle
update-alternatives
Route für sie nicht funktionieren würde, da sie die Binärdatei gcc-4.7 nicht zur Verfügung hatten. In der Tat führt der Versuch, den Anweisungen in dieser Antwort nach der Installation von gcc-4.7-base zu folgen, zu dem Fehler:update-alternatives: error: alternative path /usr/bin/gcc-4.7 doesn't exist.
Die
gcc
Binärdatei befindet sich imgcc-X.Y
Paket, nichtgcc-X.Y-base
. Letzteres ist eine Abhängigkeit von entwedergcc-X.Y
oderlibstdc++
.Grundsätzlich sollten Sie es einfach installieren
gcc-4.7
und dann entweder wiegcc-4.7
in Ihrem Makefile aufrufen oder verwendeninstall-alternatives
, um es zum Standard zu machen.quelle