2012-03-14 5 views
0

저는 리눅스에서 gcc을 꽤 오랫동안 사용해 왔지만, 여전히 그 내부를 알지 못합니다. 우선, glibc이 어디에 있는지 알고 싶습니다. 둘째, 헤더는 어디에 있습니까? gcc의 기본 디렉토리 구조를 알고 싶습니다.gcc의 디렉토리 구조

그리고 헤더에 대한 Source Tree, 당신이 갈 수 있습니다 : Headers GCC

답변

1

은 현재 GCC의 디렉토리 구조를 알 수있는 좋은 웹 사이트를 찾을 수 있습니다. GCC에 대한 자세한 내용은 gcc.gnu.org을 참조하십시오. GCC, 내부 구조 및 작동 방식에 대한 많은 정보가 있습니다.

2

Filesystem Hierarchy Standard에 대해 알고 계십니까?

예를 들어, Linux version 2.6.18-274.3.1.el5 ([email protected]) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-51))에 당신은 /usr/lib/gcc/libglibc 공유 객체를 찾을 수 있습니다

locate libgcc 
/lib/libgcc_s-4.1.2-20080825.so.1 
/lib/libgcc_s.so.1 // symbolic link to 
/usr/lib/gcc/i386-redhat-linux/3.4.6/libgcc.a 
/usr/lib/gcc/i386-redhat-linux/3.4.6/libgcc_eh.a 
/usr/lib/gcc/i386-redhat-linux/3.4.6/libgcc_s.so 
/usr/lib/gcc/i386-redhat-linux/4.1.1/libgcc.a 
/usr/lib/gcc/i386-redhat-linux/4.1.1/libgcc_eh.a 
/usr/lib/gcc/i386-redhat-linux/4.1.1/libgcc_s.so 
... 

/usr/include에 위치 포함 :

>locate stdio.h 
/usr/include/stdio.h 
/usr/include/bits/stdio.h 
/usr/include/boost/iostreams/filter/stdio.hpp 
... 

파일이 같은 디렉토리에 거의있다 Linux version 2.6.38-13-generic ([email protected]) (gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4)) (x86_64 아키텍처) :

locate libgcc 
/lib/x86_64-linux-gnu/libgcc_s.so.1 
/usr/lib/libgccpp.so.1 
/usr/lib/libgccpp.so.1.0.2 
/usr/lib/ure/lib/libgcc3_uno.so 
/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5/libgcc.a 
/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5/libgcc_eh.a 
/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5/libgcc_s.so 
/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5/libgcc_s_32.so 
/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5/32/libgcc.a 
/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5/32/libgcc_eh.a 
/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5/32/libgcc_s.so 
/usr/lib32/libgcc_s.so.1 
...
 
locate stdio.h 
/usr/include/stdio.h 
/usr/include/bits/stdio.h 
/usr/include/c++/4.5/tr1/stdio.h 
...