GNU编译器的命令参数变量


-D:条件选择编译
-I :头文件搜索路径
-l:连接静态库

ARFLAGS

函数库打包程序AR命令的参数。默认值是“rv”。

ASFLAGS

汇编语言编译器参数。(当明显地调用“.s”或“.S”文件时)。

CFLAGS(常用)

C语言编译器参数,例如指定头文件路径:CFLAGS=-I/usr/include -I/path/include

选项 说明
-c 用于把源码文件编译成 .o 对象文件,不进行链接过程
-o 用于连接生成可执行文件,在其后可以指定输出文件的名称
-g 用于在生成的目标可执行文件中,添加调试信息,可以使用GDB进行调试
-Idir 用于把新目录添加到include路径上,可以使用相对和绝对路径,“-I.”、“-I./include”、“-I/opt/include”
-Wall 生成常见的所有告警信息,且停止编译,具体是哪些告警信息,请参见GCC手册
-w 关闭所有告警信息
-O 表示编译优化选项,其后可跟优化等级0\1\2\3,默认是0,不优化
-fPIC 用于生成位置无关的代码
-v (在标准错误)显示执行编译阶段的命令,同时显示编译器驱动程序,预处理器,编译器的版本号

CXXFLAGS(常用)

C++语言编译器参数。

COFLAGS

RCS命令参数。

CPPFLAGS(常用)

C预处理器参数( C++ 和 Fortran 编译器也会用到),不能包含-M和-M有关选项

FFLAGS

Fortran语言编译器参数。

GFLAGS

SCCS “get”程序参数。

LDFLAGS(常用)

链接器参数(如:“ld”),例如指定库文件的位置:LDFLAGS=-L/usr/lib -L/path/lib

选项 说明
-llibrary 链接时在标准搜索目录中寻找库文件,搜索名为liblibrary.a 或 liblibrary.so
-Ldir 用于把新目录添加到库搜索路径上,可以使用相对和绝对路径,“-L.”、“-L./include”、“-L/opt/include”
-Wl,option 把选项 option 传递给连接器,如果 option 中含有逗号,就在逗号处分割成多个选项
-static 使用静态库链接生成目标文件,避免使用共享库,生成目标文件会比使用动态链接库大

LIBS(常用)

告诉链接器链接哪些库文件,如:LIBS=-Ipthread -Iiconv

LFLAGS

Lex文法分析器参数。

PFLAGS

Pascal语言编译器参数。

RFLAGS

Ratfor 程序的Fortran 编译器参数。

YFLAGS

Yacc文法分析器参数。

发布了25 篇原创文章 · 获赞 0 · 访问量 1517
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览