Linuxコンパイラgccの使用と各ステップの役割
1413 ワード
:gcc
gcc ?
gcc
:gcc-E helllo.c -o hello.i
“E”, gcc ,
“-o” ,".i" C 。
#
, , , ;
( )
,gcc , , ,gcc 。
“-S” , , 。
: gcc -S hello.i -o hello.s
( )
“.s”
“-c” “.o” 。
:gcc -c hello.s -o hello.o
:( )
,
:gcc helllo.o -o hello
: C , “printf” , “stdio.h” , , , “printf” ?
: libc.so.6 , ,gcc “/usr/lib” , libc.so.6 , “printf” , 。 !
:
: , , , , “.a”。
, ( ), , 。 ".so", libc.so.6 ,gcc , ,gcc , : gcc hello.o -o hello
*( , , )
gcc , 。
gcc :-E : , , 。
-S: ,
-c:
-o:
-static:
-g: ,GNU 。
-O0, -O1, -O2, -O3 4 , , ,
-Wall 。