CentOS 에서 yum으로 설치한 gcc 버젼이 구버젼이라서 새버젼을 설치하려는데...
글쓴이: scan15g / 작성시간: 토, 2013/03/23 - 5:37오후
이미 yum 으로 설치한 gcc를 비롯한 gmp, mpc, mpfr등의 필수 개발용 프로그램을 더 높은 버젼으로 바꾸고 싶은데요.
yum에서 gcc,mpfr,gmp를 제거하려고 하자 yum 자체에 프로텍트가 걸려 지울 수가 없었습니다.
또 gcc 없는 상태에서 최신의 gmp,mpfr,mpc를 다운받아서 빌드하려면 또 gcc가 필요하다고 하구요...
그래서 그냥 기존 버젼이 있는 상태에서 최신 버젼을 깔아버리니까 각종 프로그램들이 컴파일 할때 이버젼 저버젼의 라이브러리를 섞어쓰는 등 문제가발생합니다....
기존 버젼을 삭제하는것도 안되고, 그냥 빌드해서 설치하면 yum의 의존성 목록에도 추가가안되고, 라이브러리를 구버젼으로 사용해버리는 프로그램도있고...
어떻게 깔끔하게 최신버젼의 gcc, gmp, mpfr, mpc프로그램을 사용할 수있을까요..?
리눅스에 문외한이라 이렇게 질문을 드립니다...ㅠㅜ
Forums:
가능합니다
딱히 관리자 권한이 필요한 게 아니라면... 님께서 권한을 갖고 계신 디렉토리(ex. 홈 디렉토리) 하위에 여러 디렉토리로 나누어 설치하거나
gcc의 이름을 변경(ex. gcc-4.3, gcc-4.4, gcc-4.5 뭐 이런 식으로...)해서 여러 버전 깔아놓고 쓸 수 있습니다.
윈도우즈에서 Visual Studio 6.0, 2008, 2010 깔아놓고 편의에 맞게 쓸 수 있는 것처럼... 기존 것을 완전히 지우거나 덮어씌워버리는 게 아닌 이상, 안 될 이유가 없습니다.
http://gcc.gnu.org/faq.html#multiple 을 참고하십시오.
쉽게 말해, 새로운 gcc를 다른 디렉토리에다 설치한 후 (소스 설치라면 --prefix 와 같은 옵션이 있을 겁니다)
gmp, mpc, mpfr 등을 빌드하실 때 컴파일러 경로를 새로 설치한 곳의 gcc를 쓰게 하면 됩니다. (export CC=... 또는 Makefile 내의 CC나 GCC 변수를 고치셔도 되고.. 옵션으로 지정하실 수도 있고요)
최고 관리자 권한이 있으시다면 뭐 더 수월하실테고요.
아예 새로 설치하는 상위 버전의 gcc를 항상 디폴트로 쓰고 싶으시다면 아래 링크도 참고해보십시오.
http://unix.stackexchange.com/questions/53888/multiple-gcc-and-linking-between-them
근데 CentOS는 잘 모르겠습니다만, yum같은 패키지 매니저로 자동 설치해도 gcc 여러 버전 잘 깔리지 않나요?
전 최근 몇 년간은 ubuntu만 썼습니다만, 패키지 매니저로 자동 설치해도 gcc 여러 버전 잘 깔립니다.
다만 디폴트로 쓸 gcc가 무엇인지 symbolic link를 제대로 잡아준다던가, 명시적으로 내가 사용하고 싶은 gcc 버전을 지정한다던가 그런 작업은 당연히 해야합니다만...
- 어제보다 나은 오늘, 오늘보다 나은 내일.
제가 리눅스를 잘 몰라서 그랬나봅니다ㅠㅜ
답글 감사드립니다.
여러개를 설치 해 두어도 사용할 때 잘 가져다 쓰면 문제가 되지 않는 다는 말씀 이시군요.
제가 리눅스를 사용하는데 익숙치 않아서 그런가 봅니다 ㅠㅜ
감사합니다!
높은 버전 또는 최신의 CentOS를 사용하는 것도
높은 버전 또는 최신의 CentOS를 사용하는 것도 방법입니다.
현재 GNU에서 릴리즈한 gcc 버전은 4.8.0 이 최신이구요(소스 컴파일 해서 사용 가능).
CentOS에서 지원하는 것은(RPM으로 바이너리 설치 해서 사용 가능, yum 이용)
CentOS 6.4 : gcc 4.4.7
CentOS 5.9 : gcc 4.1.2
입니다.
http://distrowatch.com/table.php?distribution=centos
——
———
Life is a tragedy when seen in close-up, but a comedy in long-shot. - Chaplin, Charlie -
댓글 달기