17.12.compiler

可能的参数:(无), env (默认,隐式), C++17-lang, C++14-lang, C++11-lang, gcc-C++11-lib, C++11-lib, C++0x, c11, nestedfct, features

根据任何给定的愿望来决定使用哪种编译器。如果 port 需要一个能使用 C++17 的编译器,则使用 C++17-lang;如果 port 需要一个能使用 C++14 的编译器,则使用 C++14-lang;如果 port 需要一个能使用 C++11 的编译器,则使用 C++11-lang;如果 port 需要带有 C++11 库的 g++ 编译器,则使用 gcc-C++11-lib;如果 port 需要一个 C++11-ready 标准库,则使用 C++11-lib。 如果 port 需要一个能够理解 C++0X、 C11 或嵌套函数的编译器,应使用相应的参数。

使用 features 来请求默认编译器所支持的功能列表。包括 bsd.port.pre.mk 之后, port 可以使用这些变量来检查结果:

  • COMPILER_TYPE: 系统上的默认编译器, 可以是 gcc 或 clang

  • ALT_COMPILER_TYPE: 系统中的替代编译器, 可以是 gcc 或 clang。只有在基本系统中存在两个编译器的情况下才设置。

  • COMPILER_VERSION:默认编译器版本的前两位数字。

  • ALT_COMPILER_VERSION:替代编译器版本的前两位数字,如果存在的话。

  • CHOSEN_COMPILER_TYPE:选择的编译器,可以是 gcc 或 clang。

  • COMPILER_FEATURES:默认编译器所支持的功能。目前它列出了 C++ 库。

最后更新于

FreeBSD 中文社区