GCC를 6.3 버전으로 업데이트


10

최신 버전의 언어로만 제공되는 일부 C ++ 기능을 사용하고 싶습니다. 문제는 Ubuntu 15.04 (Vivid Vervet)에 4.9.2가 설치되어 있고 apt-get install gcc 에서 얻은 출력을 보는 것입니다 .

Reading package lists... Done
Building dependency tree       
Reading state information... Done
gcc is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
2 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n]

이미 최신 버전이라고 말합니다. 왜 그런지 모르겠다 ...


1
Ubuntu 15.04는 더 이상 지원되지 않으므로 최신 버전으로 이동해야합니다. 이전 버전의 Ubuntu에는 일반적으로 최신 버전의 패키지가 없으므로 배포를 업그레이드하거나 ppa에서 패키지를 설치하거나 소스에서 빌드해야합니다.
Raziman TV

답변:


10

EOL (End of Life)에 도달 한 Vivid (15.04) 버전을 실행 중이므로 소스에서 빌드 하는 것이 유일한 옵션 입니다.

  1. 소스 코드 및 해당 전제 조건을 다운로드하십시오.

    wget https://ftp.gnu.org/gnu/gcc/gcc-6.3.0/gcc-6.3.0.tar.bz2
    tar jxvf gcc-6.3.0.tar.bz2
    cd gcc-6.3.0
    ./contrib/download_prerequisites
    
  2. 소스를 컴파일하십시오 (참고 :이 명령은 .bz2 아카이브를 처음 저장 한 위치에 따라 다릅니다) . 명령 옵션 을 수정할 수도 있습니다 build. 이 경우 매우 기본적인 옵션을 사용합니다.

    cd ~
    mkdir gcc-build && cd gcc-build
    ../gcc-6.3.0/configure -v --prefix=$HOME/gcc-6.3.0
    

    참고 : 사용 가능한 옵션을 보려면 문서 를 읽으십시오 .

  3. 이제 gcc를 만들 준비가되었습니다.

    • makegcc를 빌드하는 명령을 실행하십시오 .이 단계를 완료하는 데 시간이 오래 걸립니다.

      make
      
    • 위 단계가 완료되면 다음을 사용하여 빌드 된 gcc를 설치할 수 있습니다 .

      sudo make install
      

      이 프로세스가 완료되면 명령 gcc --version을 실행 하여 설치가 완료되었는지 확인하십시오.


"-v"옵션의 기능은 무엇입니까? gcc.gnu.org/install/configure.html
Fabrício Santana


이 단계를 수행 할 때 g ++ 6.3은 어느 폴더에 설치됩니까? 에 ~/gcc-6.3.0,에 ~/gcc-build또는 다른 폴더로? 이 명령을 실행 한 후에 생성 된 폴더를 제거해서는 안됩니까? 아니면 여전히 필요합니까?
HelloGoodbye

1
tar xzvf gcc-6.3.0.tar.bz2그냥 인쇄 gzip: stdin: not in gzip format; tar: Child returned status 1; tar: Error is not recoverable: exiting now아카이브 관리자를 사용하여 아카이브의 압축을 풉니 다.
HelloGoodbye

내가 실행하면 ../gcc-6.3.0/configure -v --prefix=$HOME/gcc-6.3.0, 내가 얻을 /usr/bin/ld: cannot find crt1.o: No such file or directory, /usr/bin/ld: cannot find crti.o: No such file or directory, /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.8/libgcc.a when searching for -lgcc, /usr/bin/ld: cannot find -lgcc와 유사한 오류.
HelloGoodbye

4

Ubuntu 15.04는 수명 이 다했으며 지원하지 않습니다. 즉, 더 이상 업데이트 나 수정 (보안, 버그 또는 기능) 이 게시되지 않습니다.

최신 Ubuntu 버전으로 업데이트하거나 다시 설치해야합니다.

공식 저장소에 이미 gcc 6.x 분기가있는 16.10 (9 개월 지원)을 사용 하는 것이 좋습니다 .

그러나 당신은 또한 16.04 LTS로 갈 수있다 (5 년 지원) 및 추가 신뢰할 수없는 / unguaranted PPA를 같은 최신 GCC 버전 얻기 위해 이 일을

개인적으로 저는 16.10으로 가서 ppa를 추가하지 않고 공식 채널에서 최신 소프트웨어 / 우분투 버전으로 계속 업데이트하려고 합니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.