Duangw

cc的使用

索引:

  1. 基本cc命令行语法
  2. 编译模式
  3. 创建档案库
  4. 创建动态库

1.基本cc命令行语法

-o:指定目标程序名;

-P:进行预处理,生成后缀为.i的文件,该文件去掉了所有的预编译信息;

-S:生成汇编代码,文件后缀为.s;

-c:生成目标代码,文件后缀为.o;

-I:指定头文件的存储目录;

-g:使目标代码包含调试信息;

-O:进行优化;

-dy:优先连接动态链接库,没有找到再连静态库;

-l:指定链接的库,库名不含前缀lib和后缀.so/.a等;

-L:指定库所在的路径;也可使用环境变量LD_LIBRARY_PATH来代替该选项,或结合使用;

-G:与-dy组合生成动态库;

-dn:优先链接静态库;

 

2.编译模式

-Xa:扩展的ANSI C模式;

-Xc:符合ANSI C和ISO C模式,严格符合标准C;

-Xk:“古典”C,与K&R C完全兼容;

-Xm:Microsfot C编译程序兼容模式,与-Xa相似;

-Xt:过渡模式,介于K&R和ANSI C之间。

 

3.创建档案库

使用ar命令:

ar -r libfoo.a func1.o func2.o func3.o

 

4.创建动态库

使用cc的-dy -G选项:

cc -dy -G libfoo.so func1.o func2.o func3.o