本章总结了按功能分组的 C 编译器选项。表 A–15 提供了这些选项以及编译器命令行语法的详细说明。
在本节中,编译器选项按功能分组以便提供快速参考。有关各个选项的详细说明,请参阅表 A–15 和附录 B。某些标志用于多个目的,因此出现多次。
这些选项适用于除了特别注明之外的所有平台;基于 SPARC 的系统所特有的功能标识为 (SPARC),基于 x86/x64 的系统所特有的功能标识为 (x86)。仅适用于 Solaris 平台的选项标记为 (Solaris)。适用于仅 Linux 平台的选项标记为 (Linux)。
选项 |
操作 |
---|---|
-fast | |
-m32|-m64 |
指定编译的二进制对象的内存模型。 |
-mt | |
-p | |
-xarch | |
-xautopar | |
-xhwcprof | |
-xipo | |
-xlinkopt | |
-xmemalign | |
-xopenmp | |
-xpagesize | |
-xpagesize_stack | |
-xpagesize_heap | |
-xpg | |
-xprofile | |
-xvector=lib |
选项 |
操作 |
---|---|
-xchar_byte_order | |
-xdepend | |
-xmemalign | |
-xopenmp |
选项 |
操作 |
---|---|
-flteval | |
-fma |
(SPARC) 启用自动生成浮点乘加指令。 |
-fnonstd | |
-fns | |
-fprecision | |
-fround | |
-fsimple | |
-fsingle | |
-fstore | |
-ftrap | |
-nofstore | |
-xdepend | |
-xlibmieee | |
-xsfpconst | |
-xvector |
选项 |
操作 |
---|---|
-mt | |
-xautopar | |
-xcheck | |
-xdepend |
分析循环以了解迭代间数据依赖性并执行循环重构。 |
-xloopinfo | |
-xopenmp | |
-xreduction | |
-xrestrict |
将返回赋值指针的函数参数视为限定指针。 |
-xvpara | |
-xthreadvar |
控制线程局部变量的实现。 |
-Zll |
选项 |
操作 |
---|---|
-A | |
-C | |
-D | |
-E | |
-fd | |
-H | |
-I | |
-include | |
-P | |
-U | |
-X | |
-xCC | |
-xc99 | |
-xchar | |
-xcsi | |
-xM | |
-xM1 | |
-xMD |
像 -xM 一样生成 makefile 依赖性,但包括编译。 |
-xMF |
指定可存储 makefile 依赖性信息的文件名。 |
-xMMD | |
-xP | |
-xpg | |
-xtrigraphs | |
-xustr |
选项 |
操作 |
---|---|
-c | |
-o | |
-S |
选项 |
操作 |
---|---|
-# | |
-### | |
-features | |
-keeptmp | |
-V | |
-W | |
-X | |
-xc99 | |
-xchar | |
-xhelp | |
-xjobs | |
-xpch | |
-xpchstop | |
-xtemp | |
-xtime | |
-Y | |
-YA | |
-YI | |
-YP | |
-YS |
选项 |
操作 |
---|---|
-errfmt | |
-errhdr |
将来自头文件的警告限定到指定的组。 |
-erroff | |
-errshort | |
-errtags | |
-errwarn | |
-v | |
-w | |
-xe | |
-xtransition | |
-xvpara |
选项 |
操作 |
---|---|
-xcheck | |
-g | |
-s | |
-xdebugformat | |
-xpagesize | |
-xpagesize_stack | |
-xpagesize_heap | |
-xs | |
-xvis |
选项 |
操作 |
---|---|
-B | |
-d | |
-G | |
-h | |
-i | |
-L | |
-l | |
-mc | |
-mr | |
-Q | |
-R | |
-xMerge | |
-xcode | |
-xldscope | |
-xnolib | |
-xnolibmil | |
-xstrconst |
在以后的发行版中可能会废弃此选项。改用 -features=[no%]conststrings。 |
选项 |
操作 |
---|---|
-m32|-m64 |
指定编译的二进制对象的内存模型。 |
-xarch | |
-xcache | |
-xchip | |
-xregs | |
-xtarget |
选项 |
操作 |
---|---|
-flteval | |
-fprecision | |
-fstore | |
-nofstore | |
-xmodel | |
-xpentium |
选项 |
操作 |
---|---|
-xlicinfo |
下表列出了已过时的选项。请注意,编译器仍可接受这些选项,但在以后的版本中可能不接受这些选项。所以,请尽快开始使用建议的替代选项。
表 A–15 废弃选项表
选项 |
操作 |
---|---|
-dalign |
改用 -xmemalign=8s。 |
-KPIC (SPARC) |
改用 -xcode=pic32。 |
-Kpic (SPARC) |
改用 -xcode=pic13。 |
-misalign |
改用 -xmemalign=1i。 |
-misalign2 |
改用 -xmemalign=2i。 |
-x386 |
改用 -xchip=generic。 |
-x486 |
改用 -xchip=generic。 |
-xa |
改用 -xprofile=tcov。 |
-xarch=v7,v8,v8a |
已过时。 |
-xcg |
改用 -O,以利用 -xarch、-xchip 和 -xcache 的缺省值。 |
-xcrossfile |
改用 -xipo。 |
-xnativeconnect |
已废弃,没有替代选项。 |
-xprefetch=yes |
改用 -xprefetch=auto,explicit。 |
-xprefetch=no |
改用 -xprefetch=no%auto,no%explicit。 |
-xsb |
已废弃,没有替代选项。 |
-xsbfast |
已废弃,没有替代选项。 |
-xtarget=386 |
改用 -xtarget=generic。 |
-xtarget=486 |
改用 -xtarget=generic。 |
-xvector=yes |
改用 -xvector=lib。 |
-xvector=no |
改用 -xvector=none。 |