CentOS 5.4를 실행하는 클러스터에 devtools를 설치하고 싶습니다(기본 버전보다 높은 버전의 gcc를 얻으려면. 일부 C++11 기능을 사용하려면 gcc>4.7이 필요합니다).
그러나 루트 권한이 없습니다. 루트 액세스 없이 내 사용자 홈 폴더에 devtools를 설치할 수 있습니까? 에 주어진 단계이것대답은 루트 액세스가 가능하다고 가정합니다. 정보나 링크를 보내주셔서 감사합니다.
답변1
예 당연 하죠. 그러나 알아야 할 몇 가지 사항이 있습니다.
소스에서 컴파일하고 홈 디렉터리에 접두사를 지정해야 합니다.
./configure --prefix=$HOME
물론 필요에 따라 매개변수를 추가합니다. make install
그런 다음 /home/yourdir/bin, /home/yourdir/lib 등에 설치됩니다. 라이브러리에 대한 단축된 심볼릭 링크를 생성하려면 lib 디렉토리에서 'ldconfig'를 수동으로 실행해야 할 수도 있습니다.
쉘 환경에서 아직 추가하지 않은 경우 개인 'bin' 디렉토리에 경로를 먼저 추가하십시오. 예를 들어, .bashrc에 다음을 추가하세요.
PATH=$HOME/bin:$PATH
LD_LIBRARY_PATH=$HOME/lib:$LD_LIBRARY_PATH
export PATH LD_LIBRARY_PATH
이렇게 하면 여러분의 gcc 사본이 먼저 발견될 것입니다. LD_LIBRARY_PATH는 자신의 동적 라이브러리에 대해서도 동일한 작업을 수행합니다.
최신 버전의 gcc에는 최신 버전의 binutils, 어셈블러 및 다양한 라이브러리가 필요할 수 있으므로 gcc 이상의 기능이 필요할 수 있습니다. 또한, 먼저 C 컴파일러만 컴파일하고(--enable-언어s=C 사용) gcc 자체를 다시 컴파일하여 C++ 컴파일러를 컴파일하는 것이 좋습니다.
마지막으로 위의 내용은 기존 시스템 C++ 라이브러리를 방해할 수 있습니다. 과거에는 다른 gcc 버전으로 컴파일된 C++ 라이브러리를 내 프로그램에 연결하는 데 문제가 있었습니다. C 라이브러리에는 일반적으로 이 문제가 없습니다.
답변2
루트가 아니면 GCC를 업그레이드할 수 없다고 생각합니다. rpm을 다운로드하여 설치해 보지만 가능성은 매우 적습니다.