이 문서는 리눅스 하우투 문서 시리즈의 하나이다. 따라서 모든 리눅스 하우투 문서가 저장되어 있는 곳이라면 어디든 있다. 예를 들어서 http://sunsite.unc.edu/pub/linux/docs/HOWTO/와 같은 곳이 바로 그곳이다. HTML 버전은 http://ftp.linux.org.uk/~barlow/howto/gcc-howto.html에서 찾을 수 있으며 약간 버전이 높을 지도 모른다.
gcc 에 대한 공식적인 문서는 소스 배포 화일에 들어있다. texinfo 화일,
.info
화일의 형식으로 들어있다. 네트워크 속도가 빠르다거나, 시디롬에
가지고 있거나, 또는 인내심이 많다고 생각될 때에는 그것을 untar 한 후에 해당
화일을 /usr/info
디렉토리에 카피하도록 하자. 만약 없다면
tsx-11에 가서
자료를 찾아보자. 항상 최신 버전이 있는 것은 아닐 것이다.
libc 에 대한 문서는 2 가지가 있다. GNU libc 의 경우에는 info 화일들을 가지고 있는데 stdio 부분을 빼고는 아주 자세히 리눅스 libc 에 대해서 알려주고 있다. 맨페이지도 구할 수 있는데 시스템 호출(system call 섹션 2), 많은 libc 함수(섹션 3)에 대해 아주 상세히 설명하고 있다.
두 가지 답이 있다.
(a) 리눅스 GCC 의 공식적인 배포판은
ftp://tsx-11.mit.edu:/pub/linux/packages/GCC/에서
바이너리 형태로 구할 수 있다. 즉 이미 컴파일되어 있는 것을 말한다. 지금 글을
쓰고 있는 이 순간에 최신 버전은 2.7.2 로서 화일명은
gcc-2.7.2.bin.tar.gz
이다. (편집자주: 이 문서의 작성시기가 96년도임을
상기하라!)
(b) FSF로부터의 최신 소스 버전은 GNU 프로그램 저장소인
GNU archives에서
구할 수 있다. 소스 버전이 항상 공식배포판 바이너리 버전과 같은 것은 아니다.
configure
스크립트를 이용해서 모든 설정을 할 수 있다.
tsx-11도 마저
살펴보도록 하자. 패치화일이 필요할 지도 모르기 때문이다.
어떤 것이든 컴파일이라는 것을 하기 위해서는 다음이 필요하다.
여기서 여러분에게 필요한 것은 일단 (1)여러분의 시스템이 a.out 인가? (2) 아니면 둘 다 있는 경우에 둘 중에 무엇을 택하고 싶은가? 에 따라 달라진다. 만약 여러분이 libc 4 에서 libc 5 로 업그레이드하려고 한다면 우선은 ELF-HOWTO문서를 봐야할 것이다.
tsx-11에서 구할 수 있다.
libc-5.2.18.bin.tar.gz
--- ELF 공유 라이브러리 이미지, 정적 라이브러리 그리고 C 라이브러리와 수학 라이브러리를 위한 헤더화일들
libc-5.2.18.tar.gz
--- 위 라이브러리에 대한 소스. 여러분은
헤더 화일을 구해야 하기 때문에 위에 있는 바이너리
배포판도
필요하다. 손수 컴파일을 할 것인지 아니면 그냥 바이너리를 사용할 것인지에 대한
답은 간단하다. 바이너리를 사용하라! 하지만 NYS나 셰도우 패스워드 기능을 원할 때는
손수 컴파일하는 수 밖에 없다.
libc-4.7.5.bin.tar.gz
--- a.out 공유 라이브러리 이미지, 정적 라이브러리(C 함수, 수학 함수), 위에 있는 libc 5 와 공존할 수 있게끔 디자인되어 있다. 하지만 여러분이 a.out 프로그램을 아직도 갖고 있거나 개발하려고 할 때만 필요하다.
tsx-11에서
구할 수 있으며, 현재 버전은 binutils-2.6.x.x.bin.tar.gz
이다.
바이너리 유틸리티들은 오로지 ELF 만 있다는 사실에 유의하자. 현재 라이브러리는 ELF 로만 개발되고 있으며 a.out 라이브러리는 ELF 와 같이 쓸 때만 의미있다고 생각한다. C 라이브러리 개발은 ELF 쪽으로만 진행되고 있으며, a.out으로 해야할 커다란 이유 같은게 없다면 그에 따르는 것이 좋다.