RHEL 6에 g++ 설치

RHEL 6에 g++ 설치

gccRed Hat Enterprise Linux 6(이미 설치됨)에 g++를 설치하려고 합니다.

나는 다음을 시도했습니다 :

$ yum install g++
$ yum install c++
$ yum install gcc-g++
$ yum install gcc-c++

아무것도 설치되지 않았습니다. 나는 또한 다음을 시도했습니다.

$ yum search g++
$ yum search c++

클릭이 없습니다.

어떻게 되어가나요?

답변1

repoquery <string>또는 기타 명령을 사용하여 yum search <string>저장소에서 사용 가능한 패키지를 검색할 수 있습니다.

$ repoquery 'gcc*'
gcc-0:4.5.1-4.fc14.x86_64
gcc-c++-0:4.5.1-4.fc14.x86_64
gcc-gfortran-0:4.5.1-4.fc14.i686
gcc-gfortran-0:4.5.1-4.fc14.x86_64
gcc-gnat-0:4.5.1-4.fc14.x86_64
gcc-java-0:4.5.1-4.fc14.x86_64
gcc-objc-0:4.5.1-4.fc14.x86_64
gcc-objc++-0:4.5.1-4.fc14.x86_64
gccxml-0:0.9.0-0.6.20110211.fc14.x86_64

아니면 이거:

$ yum search gcc | grep '^gcc'
gcc-gnat.x86_64 : Ada 95 support for GCC
gcc-objc.x86_64 : Objective-C support for GCC
gcc-objc++.x86_64 : Objective-C++ support for GCC
gccxml.x86_64 : XML output extension to GCC
gcc.x86_64 : Various compilers (C, C++, Objective-C, Java, ...)
gcc-c++.x86_64 : C++ support for GCC
gcc-gfortran.i686 : Fortran support
gcc-gfortran.x86_64 : Fortran support
gcc-java.x86_64 : Java support for GCC

이러한 검색 중 어느 것도 일치하는 항목을 반환하지 않거나 "g++"결과가 누락된 경우 이러한 패키지가 포함된 저장소를 RHEL에 추가해야 합니다.

항상 그렇듯이 이 명령을 사용하도록 구성된 리포지토리를 찾을 수 있습니다. 예를 들어 다음은 내 Fedora 시스템의 상위 15개 리포지토리입니다.

$ yum repolist | head -15
Loaded plugins: langpacks, presto, refresh-packagekit
Adding en_US to language list
repo id                    repo name                                      status
Dropbox                    Dropbox Repository                                  4
adobe-linux-i386           Adobe Systems Incorporated                         17
adobe-linux-x86_64         Adobe Systems Incorporated                          2
fedora                     Fedora 14 - x86_64                             22,161
google-chrome              google-chrome                                       3
google-earth               google-earth                                        1
google-talkplugin          google-talkplugin                                   1
lamolabs                   LamoLabs Repo                                      58
lamolabs-noarch            LamoLabs Repo                                       2
nautilus-flickr-uploader   Nautilus Flickr Uploader for Fedora 14              3
rpmfusion-free             RPM Fusion for Fedora 14 - Free                   411
rpmfusion-free-updates     RPM Fusion for Fedora 14 - Free - Updates         642

RHEL

RHEL을 사용하고 계시기 때문에 상황이 약간 다른 것 같습니다. 어쨌든 지원 계약 비용을 지불해야 하기 때문에 Redhat의 공식 문서를 확인하겠습니다.

이 페이지에 따르면,2.2. GNU C++ 컴파일러, 다음을 수행하여 g++를 설치할 수 있습니다.

발췌

2.2.1. C++ 컴파일러 설치

Red Hat 개발자 도구 세트에서 GNU C++ 컴파일러는 devtoolset-1.1-gcc-c++ 패키지에 의해 제공되며 섹션 1.5, “Red Hat 개발자 도구 세트 설치”에 설명된 대로 devtoolset-1.1 패키지와 함께 자동으로 설치됩니다.

2.2.2. C++ 컴파일러 사용

명령줄에서 C++ 프로그램을 컴파일하려면 다음과 같이 g++ 컴파일러를 실행합니다: scl 활성화 devtoolset-1.1 'g++ -o output_file source_file...' 이렇게 하면 현재 작업 디렉터리에 output_file이라는 이진 파일이 생성됩니다. -o 옵션을 생략하면 g++ 컴파일러는 기본적으로 a.out이라는 파일을 생성합니다.

여러 소스 파일로 구성된 프로젝트에서 작업할 때 일반적으로 먼저 각 소스 파일에 대한 개체 파일을 컴파일한 다음 개체 파일을 함께 연결합니다. 이렇게 하면 단일 소스 파일을 변경할 때 전체 프로젝트를 컴파일할 필요 없이 해당 파일만 다시 컴파일할 수 있습니다. 명령줄에서 개체 파일을 컴파일하려면 다음 명령을 실행합니다.

    scl enable devtoolset-1.1 'g++ -o object_file -c source_file'

그러면 object_file이라는 개체 파일이 생성됩니다. -o 옵션을 생략하면 g++ 컴파일러는 소스 파일 이름을 딴 파일을 생성하고 파일 확장자는 .o입니다. 개체 파일을 함께 연결하고 바이너리를 만들려면 다음을 실행하세요.

    scl enable devtoolset-1.1 'g++ -o output_file object_file...'

scl 유틸리티를 사용하면 모든 명령을 실행하여 Red Hat Enterprise Linux 시스템에서 사용되는 것과 동등한 Red Hat Developer Toolset 바이너리를 사용하여 실행되도록 할 수 있습니다. 이를 통해 기본적으로 Red Hat Developer Toolset g++를 사용하여 셸 세션을 실행할 수 있습니다:

    scl enable devtoolset-1.1 'bash'

관련 정보