[/data/aifront/cpl/others/demo01]CC -flags
______________________________________________________________________________
[ ] 中的各项是可选的。< > 中的各项是变量参数。
竖线 | 表示文字值的选择。
______________________________________________________________________________
-# 冗余模式
-### 显示由驱动程序生成的编译器命令,不进行编译
-B[static|dynamic] 指定动态或静态绑定
-D<name[=token]> 将名称与标记相关联,如同使用 #define
-E 仅通过预处理程序编译源,输出到标准输出设备
-G 生成一个动态共享的库
-H 打印编译过程中包含的每个文件的路径名
-I<dir> 将 <dir> 添加到预处理程序 #include 文件搜索路径
-KPIC 编译带 32 位地址的与位置无关的代码
-Kpic 编译与位置无关的代码
-L<dir> 传递到链接程序以将 <dir> 添加到库搜索路径
-M<file> 将 <file> 映射文件传递给链接程序
-O 使用缺省优化级别 (-xO3)
-O<n> 与 -xO 相同<n>
-P 仅通过预处理程序编译源,输出到 .i 文件
-PIC 与 -KPIC 相同
-Qoption <prog> <o>[,<o>...] 将选项列表 <o> 传递至编译阶段 <prog>
-R<dir[:dir]> 在可执行文件中生成运行时搜索路径列表
-S 编译并仅生成汇编代码 (.s)
-U<name> 删除预处理程序符号 <name> 的初始定义
-V 报告每个编译阶段的版本号
-W<c>,<arg> 将 <arg> 传递给指定的组件 <c> (a,c,d,l,m,O,o,p,0,2)
-Xlinker <arg> 将 <arg> 传递给链接程序
-Xm 支持 C++ 标识符中的美元字符
-Y<c>,<dir> 为组件位置指定 <dir> <c> (a,c,l,m,p,0,2,o)
-YA,<dir> 更改搜索组件的缺省目录
-YI,<dir> 更改搜索包含文件的缺省目录
-YP,<dir> 更改查找库文件的缺省目录
-YS,<dir> 更改启动对象文件的缺省目录
-c 仅编译 - 生成 .o 文件,禁止链接
-compat=5 标准模式;接受符合 C++ 标准的源代码(缺省模式)
-compat=g G++ 兼容模式;接受 g++ 源代码并生成 g++ 兼容对象代码
+d 不扩展内联函数
-dalign 扩展至 -xmemalign=8s
-d{n|y} 链接程序的动态 [-dy] 或静态 [-dn] 选项
-dryrun 显示驱动程序生成的编译器命令,不进行编译
-e<arg> 传递给链接程序
-erroff[=<tags>] 禁止标记指定的警告;<tags>={%none, %all, <tag list>}
-errtags[={yes|no}] 显示带标记的消息
-errwarn[=<tags>] 将标记指定的警告视为错误;<tags>={%none, %all, <tag list>}
-fPIC 与 -KPIC 相同
-fast 对选项选择的使用进行优化
-features=<a>[,<a>] 启用/禁用各种 C++ 语言特性
-filt[=<a>[,<a>]] 控制链接程序和编译器错误消息的过滤;
<a>={errors,names,returns,stdlib}
-flags 显示编译器选项的摘要
-flagsrc=<f> 接受来自文件 <f> 的命令选项
-fma=<a> 启用浮点乘法-加法指令; <a>={none|fused}
-fnonstd 将浮点硬件初始化为非标准首选项
-fns[={yes|no}] 选择非标准的浮点模式
-fpic 与 -Kpic 相同
-fround=<r> 选择启动时有效的 IEEE 舍入模式
-fsimple[=<n>] 选择浮点优化首选项 <n>
-ftrap=<t> 选择启动时有效的浮点捕获模式
-g 编译以进行调试
-g0 为通过 dbx 调试而编译,但允许内联处理
-g3 为通过 dbx 调试而编译,其中包括宏。
-h<name> 将生成的动态共享库赋值为 <name>
-help 与 -xhelp=flags 相同
-i 传送到链接程序以忽略任何 LD_LIBRARY_PATH 设置
-include <file> 在其他文件前包括 <file> 的内容
-inline=<v> 尝试对指定的用户例程进行内联处理;<v>={%auto,<func>,no%<func>}
-instances=<a> 控制模板实例的链接属性;
<a>={static|global|extern|explicit|semiexplicit}
-instlib=<library> 约束生成 <library> 中已有的实例
-keeptmp 保存编译时创建的临时文件
-l<name> 使用库 lib<name>.a 或 lib<name>.so 链接
-libmieee 与 -xlibmieee 相同
-libmil 与 -xlibmil 相同
-library=<a>[,<a>] 将指定的 CC 提供的库并入到编译和链接中
-m32 设置 32 位寻址模型
-m64 设置 64 位寻址模型
-mc 从输出文件的 .comment 段中删除重复的字符串
-migration 显示何处可以获得有关从 C++ 4.2 进行移植的信息
-misalign 扩展到 -xmemalign=1i
-mr 从输出文件的 .comment 段中删除所有字符串
-mr,"string" 删除所有字符串后将 "string" 附加到 .comment 段
-mt[={yes|no}] 指定在编译多线程代码时所需的选项
-native 优化以用于主机系统 (-xtarget=native)
-noex 与 -features=no%except 相同
-o<outputfile> 将输出文件的名称设为 <outputfile>
-p 编译以便使用 prof 进行分析
+p 忽略非标准预处理程序断言
-pg 编译以便使用 gprof 进行分析
-pic 与 -Kpic 相同
-qp 编译以便使用 prof 进行分析
-s 来自可执行文件的条形符号表
-shared 与 -G 相同
-staticlib=<a>[,<a>] 强制指定为静态的库链接
-sync_stdio[={yes|no}] 控制 I/O 库的同步
-temp=<path> 将 <path> 用作临时文件的目录
-template=<a>[,<a>] 启用/禁用各种模板选项; <a>={wholeclass,extdef,geninlinefuncs}
-time 与 -xtime 相同
-traceback[=<a>[,<a>]] 通过信号为异常终止提供堆栈回溯;<a>={%none|common|<signal>}
-unroll=<n> 在可能的情况下启用 <n> 次 unrolling 循环
-v 与 -verbose=diags 相同
-verbose=<a>[,<a>] 在编译时控制冗长; <a>={template,diags,version}
-w 禁止编译器警告消息
+w 针对其他有问题的构造打印警告
+w2 针对有其他可移植性问题的代码发出警告
-xF[=<a>[,<a>]] 进行编译,以便稍后进行映射文件重新排序和数据分段
-xM 生成 makefile 相关项
-xM1 生成 makefile 相关项,但不包括 /usr/include
-xMD 生成 makefile 相关项并立即编译
-xMMD 生成 makefile 相关项(如 -xMD),但不包括标准头
-xMF <file> 为 makefile 相关项转储指定输出 <file>
-xMerge 将数据段合并到文本段中
-xO<n> 生成优化的代码;<n>={1|2|3|4|5}
-xalias_level[=<a>] 根据指定的 alias_level 启用优化; <a>={any|simple|compatible}
-xanalyze=code 为代码分析器生成静态分析信息
-xannotate[={yes|no}] 注释二进制代码以进行优化和分析
-xar 创建带有实例化模板的归档库
-xarch=<a> 指定目标架构指令集
-xautopar 启用自动循环并行
-xbinopt[=<a>] 为二进制优化和分析准备二进制内容; <a>={off|prepare}
-xbuiltin[=<a>] 如果有益,对系统函数和内部函数进行内联处理;
<a>={%none|%default|%all}
-xcache=<t> 定义缓存属性以供优化器使用
-xchar[=<a>] 将类型字符视为带符号 (s) 或不带符号 (u); <a>={s|signed|u|unsigned}
-xcheck[=<a>[,<a>]] 针对错误条件生成运行时检查; <a>={stkovf,init_local}
-xchip=<a> 指定目标处理器以供优化器使用
-xcode=<a> 生成不同的代码用于形成地址 ; <a>={abs32|abs44|abs64|pic13|pic32}
-xdebugformat=<a> 选择调试信息的格式; <a>={stabs|dwarf}
-xdepend[={yes|no}] 分析数据相关项的循环
-xdumpmacros[=<a>[,<a>]] 打印关于标准错误输出的宏定义; <a>={defs,undefs,use,loc,conds,sys}
-xdryrun 与 -### 相同
-xe 仅执行语法/语义检查,没有代码生成
-xhelp=<a> 显示联机帮助信息; <a>={flags|readme}
-xhwcprof[=<a>] 启用/禁用硬件计数器分析的程序注释;<a>={enable|disable};
<a>={disable|enable}
-xia 启用区间运算
-xinline=<v> 尝试对指定的用户例程进行内联处理;<v>={%auto,<func>,no%<func>}
-xinstrument=[no_]datarace 启用/禁用争用检测工具的校验
-xipo[=<n>] 启用跨源文件的优化和内联处理;<n>={0|1|2}
-xipo_archive=<a> 启用 crossfile 优化,包括归档文件; <a>={none|readonly|writeback}
-xivdep[=<a>] 忽略循环中对数组引用的循环承载相关项;<a>={loop|loop_any|back|back_any|none};
<a>={loop|loop_any|back|back_any|none}
-xjobs=<n> 组件编译器将并行派生出的最大数目
-xkeepframe[=<v>] 请勿优化指定用户例程的堆栈帧;<v>={%all|%none|[no%]<func>}
-xlang=<a>[,<a>] 在程序中使用的语言集; <a>={f77,f90,f95,c99}
-xldscope=<a> 在源程序中指明适当的链接程序作用域; <a>={global|symbolic|hidden}
-xlibmieee 强制 IEEE 754 返回异常条件下的数学例程值
-xlibmil 内联选定的 libm 数学例程以便进行优化
-xlibmopt 链接优化的数学库
-xlic_lib=sunperf (已过时)改为使用 -library=sunperf
-xlinkopt[={0,1,2}] 对可重定位的对象文件执行优化
-xloopinfo 显示已并行的循环
-xmaxopt=[off,1,2,3,4,5] #pragma 选项允许的最大优化级别
-xmemalign[=<a><b>] 控制内存对齐;<a>={1|2|4|8|16}, <b>={f|i|s}
-xnolib 不链接缺省系统库
-xnolibmil 在命令行上取消 -xlibmil
-xnolibmopt 在命令行上取消 -xlibmopt
-xnorunpath 不在可执行中生成一个运行时搜索路径
-xopenmp[=<a>] 启用 OpenMP 语言扩展; <a>={none|noopt|parallel}
-xpagesize=<a> 控制用于堆栈和堆的首选页大小;<a>={8K|64K|512K|4M|32M|256M|2G|16G|default}
-xpagesize_heap=<a> 控制用于堆的首选页大小;<a>={8K|64K|512K|4M|32M|256M|2G|16G|default}
-xpagesize_stack=<a> 控制用于堆栈的首选页大小;<a>={8K|64K|512K|4M|32M|256M|2G|16G|default}
-xpch=<t> 启用预编译的头。为 PCH 文件收集数据,或使用已有的 PCH 文件;<t>={auto|autofirst|{collect,use}:<file>[.cpch]}
-xpchstop=<file> 指定的包含文件为预编译头文件标记了初始通用预处理指令的结尾
-xpec[={yes|no}] 生成 PEC 二进制代码
-xpg 编译以便使用 gprof 进行分析
-xport64[=<a>] 对从 32 位移植到 64 位平台的代码启用额外检查;
<a>={no|implicit|full}
-xprefetch[=<p>] 指定指令预取;<p>={auto,no%auto,explicit,no%explicit,latx:<n>.<n>}
-xprefetch_auto_type=<a> 为循环指定自动间接预取插入; <a>={indirect_array_access}
-xprefetch_level[=<n>] 控制 -xprefetch=auto 选项的激进度;<n>={1|2|3}
-xprofile=<t> 为分析收集数据或用分析来进行优化;<t>={{collect,use}[:<path>],tcov}
-xprofile_ircache[=<t>] 与 -xprofile 选项一起使用的中间文件缓存的路径
-xprofile_pathmap=<collect-path>:<use-path> 将对象文件路径从 <collect-path> 映射到 <use-path>
-xreduction 识别并行循环中的归约操作
-xregs=<a>[,<a>] 指定可选寄存器的用法; <a>={appl,float,frameptr}
-xrestrict[=<f>] 将赋值为指针的函数参数视为受限参数;<f>={%none,%all,<function-name list>}
-xs 允许在调试时不包括对象 (.o) 文件
-xsafe=mem 假定不会发生基于内存的陷阱
-xspace 不进行会增加代码大小的优化
-xtarget=<a> 指定要进行优化的目标系统
-xtemp=<dir> 将临时文件的目录设置为 <dir>
-xthreadvar[=<a>] 控制线程变量的代码生成; <a>={dynamic}
-xtime[=<a>] 报告每个编译阶段的执行时间; <a>={1|2|3}
-xtrigraphs[={yes|no}] 启用|禁用三字母转换
-xunroll=<n> 在可能的情况下启用 <n> 次 unrolling 循环
-xustr=<a> 识别十六位字符串文字; <a>={ascii_utf16_ushort|no}
-xvector[=<a>[,<a>]] 自动生成对向量库函数的调用和/或生成 SIMD 指令;<a>={[no%]lib|%none}
-xvis[={yes|no}] 启用 VIS 内联模板
-xvpara 冗余并行警告
-xwe 将所有的警告转换为错误
后缀 'a' 对象库
后缀 'il' 内联模板文件
后缀 'o' 对象文件
后缀 'so' 共享对象
后缀 's' 汇编源
后缀 'S' cpp 的汇编源
后缀 'c' C++ 源
后缀 'cc' C++ 源
后缀 'cxx' C++ 源
后缀 'cpp' C++ 源
后缀 'C' C++ 源
后缀 'c++' C++ 源
后缀 'i' 预处理后的 C++ 源
后缀 'err' ld 错误文件
后缀 'd' 生成相关文件
SunOS 5.10 sparc C/C++ 初学者之编译参数
最新推荐文章于 2021-05-19 00:59:25 发布