当前位置: 首页 > news >正文

如何运营网站网络营销策划方案的目的

如何运营网站,网络营销策划方案的目的,企业应用系统有哪些,360网站怎么建设本文简单记录下 Bazel 使用过程中的一些知识点。 目录 文章目录 目录Bazel 目录结构BUILD 构建规则常用构建规则 Bazel 命令bazel buildbazel query Mac 安装 Bazel Bazel 是谷歌推出的一个开源的构建工具,工作原理与 make、maven 或 gradle 等其他构建工具类似。但…

本文简单记录下 Bazel 使用过程中的一些知识点。

目录

文章目录

  • 目录
  • Bazel 目录结构
  • BUILD 构建规则
    • 常用构建规则
  • Bazel 命令
    • bazel build
    • bazel query
  • Mac 安装 Bazel

Bazel 是谷歌推出的一个开源的构建工具,工作原理与 make、maven 或 gradle 等其他构建工具类似。但是与其他工具不同的是,Bazel 支持多语言。

Bazel 也是增量编译,即只编译修改的文件,未修改的文件不会被重新编译。

Bazel 目录结构

helloworld/|-- WORKSPACE|-- main.cpp| |-- hello| | |-- BUILD| | |-- hello.cpp| |-- world| | |-- BUILD| | |-- world.cpp
  1. 含有 WORKSPACE 文件的目录称为工作区 workspace ,一个项目中 workspace 只能有一个。
  2. 含有 BUILD文件的目录称为 packagepackage 可以有多个。
  3. BUILD 文件中的内容为构建规则。bazel 使用 package 下的 BUILD 这个文件指定的编译规则,来编译生成目标。

BUILD 构建规则

参考:

  1. https://bazel.build/reference/be/c-cpp?hl=zh-cn
  2. https://www.zhihu.com/column/c_1422338948081770496
构建规则描述
cc_binary生成可执行文件
cc_library生成库文件
cc_test运行,相当于 cc_binary + cc_library
cc_import导入预先编译的库(静态库、共享库)
name目标名称
srcs用以构建 C++ 目标所需要的文件列表 (包括头文件、源文件、编译中间文件)
deps需要链接到目标的库,通常是 cc_library 目标
visibility声明当前 target 的可见性,即谁可以使用这个 target ,没有此参数(默认情况)时 target 仅对同一个 BUILD文件中的其他 target 可见。visibility = ["//visibility:public"]表明该库对所有包可见
linkstatic是否将依赖库静态编译到目标中
copts添加编译参数

示例:

load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library")cc_library(name = "hello-greet",srcs = ["hello-greet.cc"],hdrs = ["hello-greet.h"],
)cc_binary(name = "hello-world",srcs = ["hello-world.cc"],deps = [":hello-greet",],
)

常用构建规则

● 在目标中包含多个文件

cc_library(name = "build-all-the-files",srcs = glob(["*.cc"]),hdrs = glob(["*.h"]),
)

● 添加对已有库的依赖关系

# 写法1
cc_library(name = "mylib",srcs = ["mylib.so"],hdrs = ["mylib.h"],
)# 写法2
cc_import(name = "mylib",hdrs = ["mylib.h"],static_library = "libmylib.a",shared_library = "libmylib.so",
)cc_binary(name = "first",srcs = ["first.cc"],deps = [":mylib"],linkstatic = 1, # default value
)cc_binary(name = "second",srcs = ["second.cc"],deps = [":mylib"],linkstatic = 0,
)

Bazel 命令

参考:https://bazel.build/reference/command-line-reference?hl=zh-cn

命令描述
bazel build编译
bazel test测试
build run运行,相当于 bazel build + bazel test

bazel build

示例:

bazel build //main:hello-world

//main 是相对路径,相对于当前工作区间的路径。如果是 @//main,则表示相对于主工作区间 workspace 的路径。

hello-world 是目标 target 。

bazel query

  • 查看指定目标的依赖关系
bazel query --notool_deps --noimplicit_deps "deps(//main:hello-world)" --output graph

上面的命令可以查看指定目标的依赖关系,可以将输出拷贝粘贴到 GraphViz 可视化展示。

Mac 安装 Bazel

可以通过 Homebrew 安装 Bazel :

brew install bazel

如果本机没有 homebrew ,可以通过如下命令安装(可能需要科学上网):

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
http://www.yayakq.cn/news/596308/

相关文章:

  • 怎么建好网站千库网原创设计师
  • 移动端教学视频网站开发网站推广服务怎么做
  • 网站模板 首饰预定行业网站做不下去
  • wordpress建什么站vps搭建网站
  • 网站动态页面打不开口腔网站设计图
  • 关于网站建设的一些事直播网站开发要多久
  • 创客网站建设网站下载免费软件安装
  • 如何理解电子商务网站建设与管理定西市住房和城乡建设局网站
  • flash做网站自己做剧本网站
  • 互联网百强企业排名宁波seo在线优化哪家好
  • 宁波营销型网站建设首选泰安网站建设价格
  • 自己做网站还是开通阿里巴巴诚信通上海网站怎么备案
  • 自己怎做网站广州建网站哪家最好
  • 网站开发参考书籍打开百度搜索
  • 做系统网站信息检索网站阿里云服务器官网入口
  • 网站建设 运维 管理包括有没有专业做挂的网站吗
  • 自己做的网站怎么才能在百度上查找网站开发需求调研
  • 飞翔时代网站建设湖南佳邦建设有限公司网站
  • 一建建设网站信息流优化师没经验可以做吗
  • 网站建设总结经验网页搜索怎么设置浏览器
  • 做网站后台的电子文库设计说明万能模板200字
  • 夫妻做网站萍乡网站设计公司
  • 网站建设程序的步骤过程网页设计素材背景图片
  • 做网站的带宽多少钱子网站建设
  • 公司网站建站哪个系统好用广东省建设信息网三库一平台官网
  • 公司门户网站建设费计入什么科目wordpress导航链接
  • 网站建设 企炬江阴百度wordpress插件
  • 网站关键词都没有了深圳网页制作与网站建设地址
  • 四川省建设厅门户网站js网页设计案例
  • 如何使用wp做网站微分销软件