내 시스템에서 gcc 버전을 확인했습니다.
현재 4.6.3입니다. gcc-4.8이 나왔다는 것을 읽었습니다.
나는 성공하지 않고 다음 명령을 시도했습니다.
sudo apt-get install gcc (gcc is already the newest version)
sudo apt-get install gcc-4.8 (unable to locate package)
12.04에 이 패키지를 설치하는 방법을 아는 사람이 있습니까?
답변1
이제 12.04 Precise에서 GCC-4.8을 사용할 수 있습니까?
업데이트: 2013년 6월 5일 현재 12.04(정확한)용 gcc 4.8.1 릴리스가 다음 위치에 있습니다.https://launchpad.net/~ubuntu-toolchain-r/+archive/test.
짧은 대답은 다음과 같습니다.gcc-4.8
현재 툴체인 PPA를 통해 12.04(Precise)에서 사용할 수 있습니다. 또는소스를 컴파일하여(자세한 내용은 아래 참조)
출시 발표
그만큼gcc-4.8 출시 발표3월 22일에 만들어졌으므로 아직 공식 저장소에서 이 내용을 볼 수 없을 것입니다.
그러나 Launchpad에는 다음 항목에 사용할 수 있는 PPA가 있는 것으로 보입니다.툴체인gcc-4.8을 포함하는 테스트 빌드는 다음과 같습니다.https://launchpad.net/~ubuntu-toolchain-r/+archive/test
에 따르면변경 로그 및 패키지 목록, i386, amd64, arm 및 powerpc에 대한 debs가 있으며 Raring 13.04에 맞춰 구축되었습니다.
12.04용 gcc의 최신 버전은 4.8.1이며 툴체인 PPA에서 사용할 수 있습니다.
툴체인/테스트 PPA 추가:
시스템에 PPA를 추가하려면 터미널( Ctrl+ Alt+ t)을 열고 다음 명령을 실행하십시오.
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
또한 여러 제안 패키지를 설치하라는 메시지가 표시됩니다. 이 패키지는 gcc-4.8 설치에 권장되지만 선택 사항입니다.
gcc-4.7.2에서는 사용할 수 없지만 gcc-4.8에서는 어떤 C++ 기능을 사용할 수 있습니까?
- 에 따르면GNU.ORG, gcc-4.7은 다양한 기능을 지원합니다.C++11 기능.
gcc-4.8 릴리스부터 gcc-4.7은 64개 기능 중 8개 기능을 지원하지 않습니다(참조:GCC에서 C++0x/C++11 지원)
이러한 기능은 다음과 같습니다.
Language Features - Rvalue references for *this - Generalized attributes - Alignment support - Inheriting constructors Concurreny - Bidirectional Fences - Memory model - Abandoning a process and at_quick_exit - Thread-local storage
- gcc-4.8의 전체 변경 사항 목록은 다음을 참조하세요.변경 목록
지금은 12.04 Precise에 이러한 gcc 기능이 필요합니다. 어떻게 얻을 수 있나요?
소스에서 GCC-4.8 빌드:
지금 12.04에 gcc-4.8이 필요한 경우 유일한 옵션은 다음과 같습니다.소스에서 빌드.
읽어 보시기 바랍니다GCC 설치 FAQ설치 전.
gnu.org 중 하나에서 gcc-4.8을 다운로드할 수 있습니다.미러 사이트아니면 그들로부터 직접SVN 서버.
다음은 소스에서 컴파일하는 단계의 예입니다(참조:여기자세한 내용은.) 시스템 및 기본 설정에 따라 다를 수 있습니다.
다운로드소스 코드
- 빌드 디렉터리 만들기(
mkdir gcc-build && cd gcc-build
) - 소스 파일을 다운로드합니다.
wget http://www.netgull.com/gcc/releases/gcc-4.8.0/gcc-4.8.0.tar.bz2
(적절한 파일을 사용하려면 이 명령을 조정하세요.미러 사이트. - 파일의 압축을 푼다(
tar -xvjf <file name>
)
- 빌드 디렉터리 만들기(
일부 추가 라이브러리 설치(
sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev libc6-dev
)- 소스를 컴파일합니다:
./gcc-4.8.0/configure --prefix=/app/gcc/4.8.0
- 실행
make
(완료하는 데 시간이 좀 걸립니다. 가서 커피를 끓이거나 쿠키를 구워보세요. ;-)) - 코드를 설치합니다:
sudo make install
이 프로세스가 완료되면 명령을 실행하여 gcc --version
설치가 성공적으로 완료되었는지 확인하십시오. 다음 출력과 비슷한 내용이 표시됩니다.
maggotbrain@foucault:~$ gcc --version
gcc (Linaro 4.8.0) 4.8.0
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
결론: 쉽게 설치할 수 있는 Ubuntu 백포트를 제공해주신 모든 분들께 감사드립니다. 달리면서 구운 쿠키를 그들에게 주세요 make
. ;-)
답변2
따라서 적어도 수동 설치의 경우 위의 답변이 작동합니다. 이후에도 sudo make install
실행은 gcc
여전히 스톡 버전 4.6.3을 실행합니다. 노력해 gcc-4.8
도 gcc-4.8.0
작동하지 않습니다. /app/gcc/4.8.0/bin/gcc
나에게 맞는 것은 달리기 뿐인 것 같다. 제 말은 그것이 좀 형편없긴 하지만 적어도 효과가 있다는 뜻입니다.