Jak aktywować wersję gcc 4.7?

12

Mam zainstalowaną gcc 4.6.3:

gcc --version

gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3

Zainstalowałem nowszą wersję:

apt-get install gcc-4.7

Ale nadal piszę wynik „gcc 4.6.3” gcc --version. Jak to naprawić?

Używam Ubuntu 12.04 i zrobiłem

sudo apt-get update
sudo apt-get upgrade
Sashko Lykhenko
źródło

Odpowiedzi:

13

Jest tak, ponieważ masz zainstalowane obie wersje, a 4.6 jest traktowany jako domyślny.

Możesz wyraźnie wybrać, którego użyć.

$ gcc-4.7 --version
gcc-4.7 (Ubuntu/Linaro 4.7.2-22ubuntu4) 4.7.2
[...]

$ gcc-4.6 --version
gcc-4.6 (Ubuntu/Linaro 4.6.3-15ubuntu3) 4.6.3
[...]

Najprostszym sposobem gcc-4.7ustawienia domyślnego gccjest przesunięcie dowiązania symbolicznego /usr/bin/gcc:

sudo rm /usr/bin/gcc
sudo ln -s /usr/bin/gcc-4.7 /usr/bin/gcc
Rafał Cieślak
źródło
2
Jak ustawić domyślną gcc-4.7?
Sashko Lykhenko
@ СашкоЛихенко Czy chcesz tylko ustawić gcc-4.7wartość domyślną gcc, czy wolisz łatwo przełączać się gccmiędzy gcc-4.6i gcc-4.7?
Rafał Cieślak,
Prawdopodobnie go potrzebuję, ponieważ pojawia się następujący komunikat o błędzie podczas instalowania aplikacji Webkit ze źródła. configure: błąd: Kompilator GCC> = 4.7 lub Clang> = 3.0 jest wymagany do kompilacji C
Sashko Lykhenko
@ СашкоЛихенко To ma sens. GCC 4.7 wprowadza obsługę standardu C ++ 0x, który może być wymagany przez nowe oprogramowanie.
Rafał Cieślak,
Chcę ustawić gcc-4.7 jako domyślny gcc. Mam nadzieję, że to pomoże
Sashko Lykhenko
0

Jeśli szukasz instalacji starej wersji gcc, zainstaluj bezpośrednio z wiersza poleceń. Na przykład, jeśli chcesz zainstalować gcc-4.4.6, a najnowszą dostępną wersją jest 4.7.3. Jeśli wpiszesz:

sudo apt-get install gcc

wtedy domyślnie zostanie zainstalowana najnowsza wersja. Aby zainstalować gcc-4.4.6, po prostu wpisz:

sudo apt-get install gcc-4.4

Ale nadal domyślnym kompilatorem jest najnowszy gcc. Aby usunąć najnowszy gcc jako domyślny typ:

sudo rm /usr/bin/gcc

Teraz czyniąc gcc-4.4.6 domyślnym kompilatorem (jest to zastąpienie gcc przez gcc-4.4.x), wpisz:

sudo ln -s /usr/bin/gcc-4.4 /usr/bin/gcc

Mam nadzieję, że to wyjaśni wyżej wspomniany problem.

Satish Patil
źródło
-1

postępuj zgodnie z tą instrukcją: Kompiluj gcc (tutaj: wersja: 4.7.2)

tar -xf gcc-4.7.2.tar.bz2
mkdir gcc-build
cd gcc-build
../gcc-4.7.2/configure --enable-languages=c,c++
make -j 4
make install
make clean          (OPTIONAL)
cd ..

Obecnie samokontrola gcc nie działa, więc ten krok został tutaj pominięty. Teraz powinieneś sprawdzić, czy wywoływany jest nowy kompilator w wersji 4.7.2 zamiast kompilatora używanego w procesie kompilacji (tutaj gcc-4.5.3). Wprowadź następujące polecenia:

gcc --version; g++ --version

Nowy kompilator został zainstalowany w /usr/local/bin. Jest teraz domyślnym kompilatorem, ponieważ w zmiennej PATH /usr/local/bin jest wcześniej /usr/bin.

farhad rad
źródło