4.6 대신 GCC 4.7을 사용하는 방법은 무엇입니까?


8

그래서 프로젝트를 진행 중이며 C에 C11 기능을 사용하고 싶었습니다. 이러한 기능을 사용하려면 GCC 4.7이 필요하므로 시냅스로 이동하여 4.7을 찾은 다음 gcc-4.7-base 패키지를 찾았습니다. 설치 [1].

이제 gcc-4.7-base가 설치되었으므로 4.7을 사용할 수있을 것으로 예상했지만 아니요, gcc --version여전히 4.6.3 이상을 표시하고 4.7 (via /usr/bin/gcc-4.7) 를 직접 호출하려고하면 존재하지 않습니다. 하지만 gcc-4.6실행 파일이 존재한다.

GCC 4.7을 어떻게 "활성화"합니까? 나는 여기 에서 읽었습니다. 와 함께 미친 짓을 update-alternatives하지만 gcc-4.7실행 파일이 실제로 내 컴퓨터에 없기 때문에 작동 하지 않습니다.

참고 : 1. gcc-4.6-base도 보았으므로 제거 할 것이라고 생각했지만 시냅틱은 설치 한 모든 패키지를 제거하고 Java 런타임을 설치하려고했기 때문에 명백한 이유로 제거하지 않기로 결정했습니다.

답변:


13

다음은 나를 위해 일했습니다.

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.6 
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.7 40 --slave /usr/bin/g++ g++ /usr/bin/g++-4.7 
sudo update-alternatives --config gcc

참조 소스


OP update-alternatives가 gcc-4.7 바이너리를 사용할 수 없기 때문에 경로가 작동하지 않는다고 구체적으로 말했기 때문에 이것이 질문에 대한 답변이라고 생각 하지 않습니다. 실제로 gcc-4.7-base를 설치 한 update-alternatives: error: alternative path /usr/bin/gcc-4.7 doesn't exist.
후이

0

gcc진은에 gcc-X.Y, 패키지 없습니다 gcc-X.Y-base. 후자는 gcc-X.Y또는 의 종속성입니다 libstdc++.

기본적으로 간단히 설치 gcc-4.7한 다음 gcc-4.7makefile에서 와 같이 호출 하거나 install-alternatives기본값으로 사용하십시오.

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