1.gcc命令less
gcc 编译选项 编译名函数
2.编译选项详解优化
-o 肯定可执行文件的名称spa
-c 只编译不链接成为可执行文件,会生成.o文件调试
-g 可产生调试信息编译
-O 对程序进行优化gcc
-O2 优化更优秀,编译速度更慢sso
-Idirname 讲dirname,如gcc -I/home/lesson/gc
将dirname所指的目录加入到头文件目录列表中程序
-Ldirname 将dirname所指的目录加入到库文件目录列表中
-lname 在链接时,装载名字为“libname.a”的函数库,该函数库位于系统预设的目录或者由-L选项肯定的目录下。例如:-lm 表示装载名字为“libm.a”的函数库。
例子:gcc foo.c -L/home/lib -lfoo -o foo
-static 静态链接库文件
例子:gcc -static hello.c -o hello
静态链接和动态链接的区别:
静态链接会和应用程序绑定运行(程序比较大)
动态链接会在应用程序运行时加载 (程序较小)