Microsoft 社는 2022년 6월 15일 Internet Explorer 11의 지원을 종료했습니다.

Installing gcc-4.8.2 on CentOS 5.8

제목

gcc-4.8.2 on CentOS 5.8

대부분의 경우에 gcc-4.8.2 을 설치한다고 하더라도 glbic 혹은 kernel 버전도 너무 낮아서 원하는 것을 쉽게 얻을 수는 없다.

1. rpm 으로 설치

다음의 웹페이지에서 CentOS 5 혹은 6 을 위한 gcc-4.8.2 를 다운로드 할 수 있다.

https://people.centos.org/tru/devtools-2/

5 > x86_64 > RPMS 에서 다음과 같은 파일을 다운로드 받는다.

  • devtoolset-2-gcc-4.8.2-15.el5
  • devtoolset-2-gcc-c++-4.8.2-15.el5
  • devtoolset-2-runtime-2.1-3.el5
  • devtoolset-2-libstdc++-devel-4.8.2-15.el5

다음과 같이 설치한다.

rpm -Uvh devtoolset-2-gcc-4.8.2-15.el5.x86_64.rpm \
devtoolset-2-gcc-c++-4.8.2-15.el5.x86_64.rpm \
devtoolset-2-runtime-2.1-3.el5.noarch.rpm \
devtoolset-2-libstdc++-devel-4.8.2-15.el5.x86_64.rpm

설치한 파일은 /opt/rh/devtoolset-2/root/usr/bin 에 있다.

다음과 같이 설치한 파일 경로를 붙여서 명령을 실행한다.

CC=/opt/rh/devtoolset-2/root/usr/bin/gcc \
CXX=/opt/rh/devtoolset-2/root/usr/bin/g++ \
./configure --prefix=

2. yum 으로 설치

가급적 rpm 으로 설치하는 것을 권한다.

CentOS 5.8 의 openssl 과 python 은 너무 낡았기 때문에 대부분의 https 에 접속할 수 없다.

curl, wget, yum 도 모두 protocol version 경고만 뜨고 종료되어 버린다.

2023년에 CentOS 5.8 에서 yum 따위를 사용하려면 저장소 주소를 http 로 하는 수 밖에 없다.

https://people.centos.org/tru/devtools-2/ 에서 다운로드 받은 파일을 http 가 가능한 다른 서버에 올려두고, 그 서버를 저장소 주소로 하는 것이 유일한 방법이다.

다음은 devtools-2.repo 파일을 다운로드 받은 다음 CentOS 5.8 의 /etc/yum.repos.d/ 디렉토리로 옮긴다음 baseurl 주소를 적당히 변경하면 된다.

gcc 와 g++ 만 설치하면, 나머지는 yum 이 알아서 설치할 것이다.

yum install \
devtoolset-2-gcc \
devtoolset-2-gcc-c++ \
-y

3. 사용

설치된 디렉토리는 /opt/rh/devtoolset-2/root/usr/bin/ 이다.

PATH 환경변수를 잡아도 되지만, 다음과 같이 CC, CXX 환경변수를 설정하는 것을 권한다.

CC=/opt/rh/devtoolset-2/root/usr/bin/gcc \
CXX=/opt/rh/devtoolset-2/root/usr/bin/g++ \
./configure

4. 잡담

gcc-4.8.2 를 전가의 보도처럼 사용할 수 없다.

CentOS 5.8 은 kernel 과 glibc 가 너무 낡았고, 이를 upgrade 할 수 없다고 전제하면, 대부분의 문제가 해결되지 않는다.

gcc-4.8.2 로 해결할 수 있었던 것은 gnutls-3.7.10 정도였던 것 같고, nettle 3.7 이상(nettle-3.7.3, nettle-3.8.1, nettle-3.9, nettle-3.9.1) postgresql 14 이상(postgresql-14.9, postgresql-15.4) 은 설치할 수 없었다.

gnutls-3.8.1 의 경우 정확한 원인은 알 수 없었지만, gcc-4.8.2 로 컴파일 할 수 없었다.

제목

첨부파일