GCC/G++ 버젼 10 (-std=c++2a 지원) 설치
우분투 20.04의 최신 gcc/g++ 버젼은 9 이다. 오픈-소스 EDA 도구들의 빌드에 문제없다. 특히 SystemC 3.0 이 C++ 표준 17을 요구하는데 g++ 버젼 9 으로 충분했다.
최근 Verilator 가 업데이트 하면서 --timing 옵션을 사용하려면 <coroutine>을 요구하는데 g++ 버젼 9는 이를 지원하지 않는다. 이에 대응 하려면 gcc/g++ 10를 설치해야 한다. 이 버젼은 C++ 표준 20/2a 를 지원한다.
우분투 20.04에서 gcc/g++ 10의 설치 방법
현재 버젼 확인:
$ gcc --version
$ g++ --version
버젼 정보가 9.x.x 일 경우, 10 버젼용 컴포넌트들을 설치한다.
$ sudo apt install g++-10 gcc-10
두개의 버젼이 동시에 존재하므로 버젼 10을 기본으로 설정한다. 버젼 9는 우선순위를 낮춰준다.
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 40
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 60
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 40
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 60
다시 버젼을 확인하면 gcc/g++ 버젼 10 이다.
$ gcc --version
gcc (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0
Copyright (C) 2020 Free Software Foundation, Inc.
$ g++ --version
g++ (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0
Copyright (C) 2020 Free Software Foundation, Inc.
복수의 개발 도구 버젼이 존재하는 경우 선택할 수 있다.
$ sudo update-alternatives --config gcc
There are 2 choices for the alternative gcc (providing /usr/bin/gcc).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/gcc-10 60 auto mode
1 /usr/bin/gcc-10 60 manual mode
2 /usr/bin/gcc-9 40 manual mode
Press <enter> to keep the current choice[*], or type selection number:
현재 기본으로 선택된 gcc가 버젼 10이다. 버젼 9를 지정할 수 있다.
$ sudo update-alternatives --config g++
There are 2 choices for the alternative g++ (providing /usr/bin/g++).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/g++-10 60 auto mode
1 /usr/bin/g++-10 60 manual mode
2 /usr/bin/g++-9 40 manual mode
Press <enter> to keep the current choice[*], or type selection number:
댓글 없음:
댓글 쓰기