Cyber-bezal
// bazel // google研发的一款开源构建和测试工具 // 单个主cpp文件 // demo_cc目录下新建buld文件,demo_cc目录即为cpp所在目录 cc_binary( name = "1", src = ["1.cpp"], deps = ["//cyber"] // 因为include了cyber.h ) bazel build cyber/demo_cc/... // 构建demo_cc目录下的所有文件 // source cyber/setup.bash // 刷新环境变量 ./bazel-bin/cyber/demo_cc/name // 执行 // 单个头文件实现 cc_library( name = "hello_great_lib", srcs = ["hello_great_lib.cpp"], hdrs = ["hello_great.h"] // deps = [""] ) bazel build demo_lib/... ./demo_lib/hello_great_lib // 同目录依赖 // 如果main依赖了.h文件,则在build中都写上相应的cc_library和cc_binary // 示例如下 cc_library( name = "hello_great_lib", srcs = ["hello_great_lib.cpp"], hdrs = ["hello_great.h"] // deps = [""] ) cc_binary( name = "hello_world", srcs = ["hello_world.cpp"], deps = [":hello_great_lib"] // :表示相对路径的当前目录下 ) // 跨目录依赖 //方式一: // .h文件的目录 cc_library( name = "hello_great_lib", srcs = ["hello_great_lib.cpp"], hdrs = ["hello_great.h"] visibility = ["//demo_main:__pkg__"] // 表示对另一个demo_main目录下的文件可见,用于开放权限 // deps = [""] ) // main所在目录 cc_binary( name = "hello_world", srcs = ["hello_world.cpp"], deps = ["//demo_lib:hello_great_lib"] // :表示相对路径的当前目录下 ) // 方式二: // 可以在.h文件的目录的BUILD首行写一句package(default_visibility = ["//visibility:public"]) // 即可对所有的目录都可见
自己选择的路,跪着也要走完。朋友们,虽然这个世界日益浮躁起来,只要能够为了当时纯粹的梦想和感动坚持努力下去,不管其它人怎么样,我们也能够保持自己的本色走下去。

浙公网安备 33010602011771号