Consegui passar pelo problema do gcc (que agora está em 7.2.0). Eu usei os passos aqui , modificando-os para gcc-7.2.0. ( Isto é para o sistema 64bits )
Então, faça o download da fonte e dos pré-requisitos do GCC 7 em aqui
cd ~
wget http://gcc.parentingamerica.com/releases/gcc-7.2.0/gcc-7.2.0.tar.xz
tar xf gcc-7.2.0.tar.xz
cd gcc-7.2.0
contrib/download_prerequisites
Vamos instalar o compilador em /usr/local/gcc-7.2
, para não mexer com o compilador padrão, pois isso pode quebrar seu sistema .
cd ~
mkdir build && cd build
../gcc-7.2.0/configure -v --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --prefix=/usr/local/gcc-7.2 --enable-checking=release --enable-languages=c,c++,fortran --disable-multilib --program-suffix=-7.2
Então nós construímos a coisa com
make -j 8
onde especificamos que queremos que 8 threads trabalhem no trabalho ao mesmo tempo. A razão para isso é que eu tenho 4 núcleos que são hyperthreaded (eles podem cada processo 2 threads ao mesmo tempo). Ajuste isso de acordo com sua configuração. Esta etapa leva muito tempo - levou cerca de 30 minutos em um laptop decente. Uma vez que o acima é feito, instale o compilador
sudo make install
Agora, temos que dizer ao nosso sistema para usar este compilador. Eu não fiz o que é aconselhado no guia que eu vinculei no topo, em vez disso eu segui isto , a fim de criar um compilador alternativo, fazendo
sudo update-alternatives --install /usr/bin/gcc gcc /usr/local/gcc-7.2.0/bin/gcc-7.2 50 --slave /usr/bin/g++ g++ /usr/local/gcc-7.2.0/bin/g++-7.2
E, em seguida, selecionando o compilador alternativo, usando
sudo update-alternatives --config gcc