当前位置: 首页 > 知识库问答 >
问题:

如何解决bazel“未声明包含”错误?

袁奇文
2023-03-14

我是bazel的新手,我在构建C++包时遇到了一个失败

错误:/path/to/package/build:lineNumber:1规则“//path/to/package/source_file.cpp”中未声明的包含:此规则缺少“path/to/package/source_file.cpp”所包含的下列文件的依赖项声明

我的问题是如何正确地将声明添加到构建文件中以解决错误?

根据这里的在线Bazel文档,我应该将每个标题添加到srcs列表中。(明确地说,这些头是我正在构建的库内部使用的,不是公共接口的一部分,所以它们不属于HDR。)但如果我尝试,

  srcs = [ ..., "path/to/dependent/headers/header.h",]

我得到一条错误消息

  srcs = [ ..., "path/to/dependent/headers:header.h",]

Bazel C++教程在“additonal Include paths”一节中说,外部Include目录应该通过copts声明:

cc_library(
    name = "some_lib",
    srcs = ["some_lib.cc"],
    hdrs = ["some_lib.h"],
    copts = ["-Ithird_party/some_lib"],
)

但是添加-i标志并不能消除“未声明的包含”错误!

$ bazel version
Build label: 0.4.3
Build target: bazel-out/local-fastbuild/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Thu Dec 22 12:31:25 2016 (1482409885)
Build timestamp: 1482409885
Build timestamp as int: 1482409885

共有1个答案

窦英武
2023-03-14

我遇到了类似的prolblem“规则中未声明的包含”,我通过删除/root/.cache/bazel/中的bazel缓存文件来解决这个问题。希望有所帮助

 类似资料:
  • 当我运行来检查我的事件时 致命错误:无法在C:\xampp\htdocs\myshop\app\Http\helpers.php行92中重新声明视图()(先前在C:\xampp\htdocs\myshop\供应商\laravel\框架\src\Illumate\Foundation\helpers.php:850中声明)PHP致命错误:无法重新声明视图()(先前声明在C:\xampp\htdocs

  • 问题内容: 我试图快速制作一个文本字段,该文本字段将允许启用按钮,但前提是该文本字段包含整数。我怎样才能做到这一点? 问题答案: 通过添加到类声明,使您的视图控制器成为a 。 添加是为了你们的文本字段,你的按钮。 在中将按钮的属性设置为,并设置为。 实现方法。每次编辑文本字段时都会调用此方法。在其中,通过调用并根据需要启用/禁用按钮来检查当前文本字段是否转换为。 这是代码:

  • 10.3. 包声明 在每个Go语言源文件的开头都必须有包声明语句。包声明语句的主要目的是确定当前包被其它包导入时默认的标识符(也称为包名)。 例如,math/rand包的每个源文件的开头都包含package rand包声明语句,所以当你导入这个包,你就可以用rand.Int、rand.Float64类似的方式访问包的成员。 package main import ( "fmt"

  • 升级自制软件时遇到错误 DYLD:库未加载: /usr/local/opt/openldap/lib/libldap-2.4.2.dylib引用自: /usr/local/bin/php原因:未找到图像中止陷阱:6

  • XML: 我的错误: 清单合并失败:属性application@appComponentFactory 建筑gradle(模块:应用程序)代码:

  • 问题内容: 我正在尝试解析方法声明。基本上,我需要获取接收方基本类型()和返回类型(和)的语法节点。该程序包看起来很简单,但是由于某种原因,我没有获得所需的数据(即,字段为nil)。 唯一有用的数据似乎仅在类型为字段的字段中提供, 因此我认为我无法序列化它。 任何帮助,将不胜感激。代码如下: 操场 问题答案: 要获取类型,您需要查看可能是an 或an 的属性。 这里看看这个: