gcc编译器的学习:
一、使用gcc
gcc编译过程:
1 预处理
使用-E参数可以让gcc在预处理后停止编译过程。
gcc -E hello.c -o hello.i
2 编译
使用-c参数将预处理后的源文件编译为目标代码。
gcc -c hello.i -o hello.o
3 链接
将生成的目标代码链接成课执行文件。
gcc hello.o -o hello
二、gcc警告提示功能
使用-Wall参数使gcc产生尽可能多的警告信息。
gcc -Wall hello.c -o hello
使用-Werror参数使gcc把警告当成错误处理。
gcc -Werror hello.c -o hello
三、库依赖
使用-I参数可以向gcc的头文件搜索路径中添加新目录。
gcc hello.c -I /home/wuzhiguo/include -o hello
使用-L参数可以向gcc的库文件搜索路径中添加新目录。
gcc hello.c -L /home/wuzhiguo/lib -l mylib -o hello
-l mylib 是指示gcc去链接库文件libmylib.so。Linux下的库文件有一个约定,全部以lib开头,因此可以省去lib。
动态库:.so结尾,在运行时加载。
静态库:.a结尾,在编译时加载。
默认gcc优先加载动态库,可以在通过-static选项强制使用静态链接库。
gcc hello.c -L /home/wuzhiguo/lib -static -l mylib -o hello
阅读(775) | 评论(0) | 转发(0) |