让 rules_cc 使用最新版本的 GCC

时间:2021-06-30 22:14:26

标签: bazel bazel-rules

我正在使用 Bazel 来构建我的项目。依赖项之一是 Abseil,而后者又依赖于 rules_cc。

我注意到当我安装了多个版本的 GCC 时,即使我想要使用最新版本的 GCC,rules_cc 也可能会指示 Bazel 使用旧版本的 GCC。为了解决这个问题,我一直在手动编辑 bazel-project/external/local_config_cc/BUILD 以引用最新版本的 GCC。

是否有更好或“正确”的方法来做到这一点?

1 个答案:

答案 0 :(得分:1)

将该标志添加到 .buildrc(或您的 bazel build 调用):

build --action_env=CC=/path/to/your/gcc

你也可以设置一个 CXX 变量,但此时 Bazel 只使用了一个 CC

该方法使用 Bazel 自动生成的工具链。您也可以创建您的 own toolchain,但这是一个复杂的过程。