我可以指示 bazel 向可执行文件发出“.elf”后缀吗?

Can I instruct bazel to emit a ".elf" suffix to executables?

cc_binary(在 osx / linux 上)创建没有后缀的可执行文件。这是有道理的,因为这些平台上的标准是不使用扩展。

不过,当通过自定义 CROSSTOOL 将 Bazel 用作交叉编译器时,我希望 Bazel 发出带有显式 .elf 后缀的 elf 文件。

这是否可能,通过 CROSSTOOL 或自定义 "rename" 规则?

您可以命名您的 cc_binary 'foo.elf',bazel 将直接构建它。或者您可以使用 genrule 在之后进行重命名。

现在,如果您需要使用多个工具链构建相同的 cc_binary,每次生成不同的扩展,这就有点棘手了。但是 genrule 在那里也行得通。