指定编译器选项

编译器选项执行各种各样的函数,例如设置编译器特征,描述要生成的对象代码和编译器输出,以及执行一些预处理器函数。 可以通过以下一种或多种方式指定编译器选项:

  • 通过命令行
  • 在定制配置文件中,这是具有 .cfg 扩展名的文件
  • 在源程序中
  • 作为系统环境变量
  • 在 makefile 中

对于您未以上述方式显式设置的大多数编译器选项,编译器将采用缺省设置。

指定编译器选项时,可能会发生选项冲突和不兼容。 XL C/C++ 编译器以一致的方式解决其中大部分冲突和不兼容问题,如下所示:

在大多数情况下,编译器使用以下顺序来解析冲突或不兼容的选项:

  1. 源代码中的编译指示语句覆盖在命令行上指定的编译器选项。
  2. 在命令行上指定的编译器选项将覆盖在配置文件中指定 作为环境变量或 的编译器选项。 如果在同一命令行编译器调用中指定了有冲突或不兼容的编译器选项,那么调用中的后续选项优先。
  3. 指定为环境变量的编译器选项将覆盖配置文件中指定的编译器选项。
  4. 在配置文件,命令行或源程序中指定的编译器选项将覆盖编译器缺省设置。

请参阅以下主题以获取更多详细信息: