"括号?-6ren"> "括号?-我的项目正在过渡到 Bazel来自 CMake我包括 Abseil 的快照通过将其 checkin third_party/我们存储库中的顶级目录。我需要在过渡期间支持这两个构建系统,所以我创建了 C-6ren">
gpt4 book ai didi

c++ - 包含 Bazel header 时如何允许角 "<>"括号?

转载 作者:太空宇宙 更新时间:2023-11-04 12:56:19 25 4
gpt4 key购买 nike

我的项目正在过渡到 Bazel来自 CMake我包括 Abseil 的快照通过将其 checkin third_party/我们存储库中的顶级目录。我需要在过渡期间支持这两个构建系统,所以我创建了 CMakeLists.txt文件并注意到需要禁用相当多的警告才能编译 Abseil header 。

对于 CMake,这没问题,因为我可以通过使用 #include <absl/strings/str_cat.h> 在我使用它们的地方包含标题句法。这告诉我的编译器它是一个系统头文件并忽略警告,这样我就不必全局禁用它们。

不过,对于 Bazel,我得到了这个错误:

error: 'absl/strings/str_cat.h' file not found with include; use "quotes" instead

有没有办法告诉 Bazel 允许 <> -风格包括?是否有另一种方法可以仅针对这些 header 禁用警告而不同时针对整个项目禁用它们?

最佳答案

默认情况下,bazel 不会为编译操作发出任何特定于 cc-library 的包含 (-I) 目录标志。由于 include 查找不是免费的,我们依赖于单个根头层次结构。但是您可以使用 includes 告诉 bazel 添加自定义包含目录。在给定的 cc_library 上。或者,最好使用 strip_include_prefixinclude_prefix .

关于c++ - 包含 Bazel header 时如何允许角 "<>"括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46498441/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com