SunOS 5.10 sparc C/C++ 初学者之编译参数

[/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'                生成相关文件


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
solaris安装gcc,g++,gdb等工具 包含以下安装包 libexpat1-2.1.0,REV=2013.01.01-SunOS5.10-i386-CSW.pkg.gz bash-4.3.33,REV=2015.02.15-SunOS5.10-i386-CSW.pkg.gz libgcc_s1-4.8.0,REV=2013.03.29-SunOS5.10-i386-CSW.pkg.gz binutils-2.23.1,REV=2012.12.04-SunOS5.10-i386-CSW.pkg.gz libgmp10-6.0.0,REV=2014.10.29-SunOS5.10-i386-CSW.pkg.gz cas_etcshells-1.50,REV=2015.01.17-SunOS5.10-all-CSW.pkg.gz libiconv2-1.14,REV=2012.11.19-SunOS5.10-i386-CSW.pkg.gz cas_texinfo-1.50,REV=2015.01.17-SunOS5.10-all-CSW.pkg.gz libintl8-0.18.1.1,p,REV=2011.03.15-SunOS5.9-i386-CSW.pkg.gz common-1.7,REV=2012.11.24-SunOS5.10-all-CSW.pkg.gz libintl9-0.19.8,REV=2016.09.07-SunOS5.10-i386-CSW.pkg.gz expat-2.1.0,REV=2013.01.01-SunOS5.10-i386-CSW.pkg.gz liblzma5-5.0.4,REV=2013.01.01-SunOS5.10-i386-CSW.pkg.gz gcc4ada-4.8.0,REV=2013.03.29-SunOS5.10-i386-CSW.pkg.gz libmpc3-1.0.2,REV=2014.03.17-SunOS5.10-i386-CSW.pkg.gz gcc4core-4.8.0,REV=2013.03.29-SunOS5.10-i386-CSW.pkg.gz libmpfr4-3.1.2,REV=2014.03.18-SunOS5.10-i386-CSW.pkg.gz gcc4g++-4.8.0,REV=2013.03.29-SunOS5.10-i386-CSW.pkg.gz libncurses5-5.9,REV=2011.11.21-SunOS5.9-i386-CSW.pkg.gz gcc4gfortran-4.8.0,REV=2013.03.29-SunOS5.10-i386-CSW.pkg.gz libpcap1-1.5.2,REV=2014.01.01-SunOS5.10-i386-CSW.pkg.gz gcc4java-4.8.0,REV=2013.03.29-SunOS5.10-i386-CSW.pkg.gz libpcap_dev-1.5.2,REV=2014.01.01-SunOS5.10-i386-CSW.pkg.gz gcc4objc-4.8.0,REV=2013.03.29-SunOS5.10-i386-CSW.pkg.gz libpython2_6_1_0-2.6.9,REV=2016.03.03-SunOS5.10-i386-CSW.pkg.gz gdb-7.6,REV=2013.08.14-SunOS5.10-i386-CSW.pkg.gz libreadline6-6.3,REV=2015.10.19-SunOS5.10-i386-CSW.pkg.gz gdb-7.7,REV=2014.02.09-SunOS5.10-i386-CSW.pkg.gz libz1-1.2.8,REV=2013.09.23-SunOS5.10-i386-CSW.pkg.gz iconv_stub-1.14,REV=2011.08.08-SunOS5.9-all-CSW.pkg.gz isaexec-0.2,REV=2009.03.26-SunOS5.8-all-CSW.pkg python-2.6.9,REV=2016.03.03-SunOS5.10-i386-CSW.pkg.gz libexpat0-1.95.8,REV=2011.07.15-SunOS5.9-i386-CSW.pkg.gz
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值