编译C++;带Bazel的代码因“错误”而失败;“参数列表太长”;

编译C++;带Bazel的代码因“错误”而失败;“参数列表太长”;,bazel,Bazel,我有一个庞大的项目,它由许多绑定在一起的库(DEP)组成 编译时,Bazel创建著名的虚拟包含,并为编译器添加相应的-iquotes/-I 由于此列表非常大,编译器失败并出现以下错误: /my/path/to/the/toolchain/cc1': execv: Argument list too long 我确实尝试删除堆栈上的限制,当前ARG_MAX为: jbasila@fedora $ getconf ARG_MAX 4611686018427387903 实现此功能的一个好方法可能是

我有一个庞大的项目,它由许多绑定在一起的库(DEP)组成

编译时,Bazel创建著名的虚拟包含,并为编译器添加相应的-iquotes/-I

由于此列表非常大,编译器失败并出现以下错误:

/my/path/to/the/toolchain/cc1': execv: Argument list too long
我确实尝试删除堆栈上的限制,当前ARG_MAX为:

jbasila@fedora $ getconf ARG_MAX
4611686018427387903
实现此功能的一个好方法可能是使用“@”参数文件。我知道它用于链接,但不用于编译


有没有一种方法可以使这项工作也用于编译?

坏消息是,我们目前没有为编译操作创建参数文件。一旦它合并到中,您可能会被保存。您可以随意打开用于编译操作的param文件的功能请求