Jak zainstalować gcc 4.8.1 na Debian Wheezy

10

Chciałbym zainstalować GCC 4.8.1 na moim systemie Debian Wheezy 7.1.0. Obecna wersja GCC zainstalowana w moim systemie to 4.7.2. Widzę, że gcc-4.8.1 jest dostępny w repozytorium Debiana. Czy ktoś może mi pokazać, jak wykonać tę aktualizację?

Mazzy
źródło
1
Czy możesz nam powiedzieć, dlaczego chcesz to zrobić? Prawie na pewno spowoduje więcej problemów niż rozwiąże.
terdon
Dlaczego mam mieć problemy? Ta nowa wersja gcc ma jakieś problemy?
Mazzy
Nie, po prostu niektóre programy mogą mieć zależności dla określonych wersji. O ile nie potrzebujesz nowej funkcji, która istnieje tylko w najnowszej wersji, aktualizacja gccnie jest warta wysiłku i może zepsuć wszystko. Dlaczego musisz zaktualizować?
terdon
1
Jak powiedziałem, nie jest to dobry pomysł, chyba że wiesz, że i) to nie przełamie żadnych zależności i ii) jest coś, czego potrzebujesz w nowej wersji. Aktualizowanie podstawowych komponentów, takich jak kompilator systemu bez uzasadnionego powodu, nie jest dobrym pomysłem.
terdon
1
Oto moja odpowiedź na podobne pytanie: uzyskać najnowszą wersję gcc dla Debiana?
Faheem Mitha

Odpowiedzi:

5

Możesz użyć czegoś takiego. Nie jest to jednak zalecane .

Jeśli naprawdę wiesz, co robisz, możesz spróbować:

Jessie (testowanie) zawiera teraz gcc-4.8, który jest zgodny z C ++ 11 (dostępny jest również gcc-4.9).

Użyłem apt-pinning w następujący sposób:

Źródło do jessie zostało dodane do /etc/apt/sources.list:

deb http://ftp.uk.debian.org/debian/ jessie main non-free contrib

/etc/apt/preferences był edytowany jako taki:

    Package: *
    Pin: release a=wheezy
    Pin-Priority: 900

    Package: gcc*
    Pin: release a=jessie
    Pin-Priority: 910

Następnie,

$ sudo aptitude update
$ sudo aptitude install gcc-4.8/jessie

$ ln -s /usr/bin/gcc-4.8 /usr/bin/gcc
$ sudo aptitude install g++-4.8/jessie
$ ln -s /usr/bin/g++-4.8 /usr/bin/g++

UWAGA: Nowsza wersja gcc może zależeć od nowszej, libc6co oznacza, że ​​nawet jeśli skompilujesz swój program za pomocą gcc-4.8, nie będziesz mógł uruchomić skompilowanego programu na innym komputerze z wheezy.

Tombart
źródło