Linux gcc的使用
Linux gcc的使用备忘
GCC基础使用
-c参数
激活预处理,编译,把程序做成obj文件
1
gcc -c hello.c
-S参数
只激活预处理和编译,把文件译成汇编代码
1
gcc -S hello.c
-o参数
指定目标名称,默认gcc编译之后为a.out
1
gcc -o hello hello.c
-O0/O1/O2/O3
开启O优化
-IDIRECTORY 指定额外的头文件搜索路径DIRECTORY。
1
gcc -I ./head/
-LDIRECTORY 指定额外的函数库搜索路径DIRECTORY。
1
gcc -L ./src/
-lLIBRARY 连接时搜索指定的函数库LIBRARY。
课件上的命令
-E 执⾏到预编译,进⾏代码⽂本的替换操作。输出预编译结果到标准输出(⼀般是显示器)
-S 执⾏到汇编,进⾏源代码到汇编代码的转换,输出汇编代码(.s⽂件)
-c 执⾏到编译,输出⽬标⽂件(.o⽂件)
-o 制定⽬标名称, 默认的时候, gcc 编译出来的⽂件是 a.out -shared 与
-fPIC:创建动态库
• -fPIC:(Position-Independent Code)它作⽤于编译阶段,告诉编译器要⽣成与位置⽆关的代码(.o⽂件)
• -shared:将多个.o⽂件链接成⼀个.so动态库⽂件
-I(⼤写的i):向gcc中加⼊头⽂件搜索路径
-L:向gcc中加⼊库路径
-static:链接静态库
-w:关闭警告
-Wall:开启所有警告
-g:产⽣带有调试信息的⽬标代码