tools/vector_gen.bzl
def drake_cc_vector_gen_library(
name,
srcs = [],
deps = [],
**kwargs):
generated = cc_vector_gen(
name = name + "_codegen",
srcs = srcs,
include_prefix = "drake",
drake_workspace_name = "",
visibility = [],
)
cc_library(
name = name,
srcs = generated.srcs,
hdrs = generated.hdrs,
deps = deps + generated.deps,
**kwargs
)
project/BUILD.bazel
load("//tools:vector_gen.bzl", "cc_vector_gen_library")
cc_vector_gen_library(
name = "x",
srcs = [
"x.yaml",
],
visibility = ["//visibility:public"],
)
但是当我尝试
bazel build //...
在目录的顶端
ERROR: /root/doublependulum/tools/vector_gen.bzl:170:5: name 'cc_library' is not defined
ERROR: Skipping '.': error loading package 'double_pendulum': Extension 'tools/vector_gen.bzl' has errors
WARNING: Target pattern parsing failed.
ERROR: Extension 'tools/vector_gen.bzl' has errors
我想我不明白。不是吗
cc_library
总是被定义?否则怎么导入?