c++ - 如何为此Boost.Build Jamfile编写Bazel BUILD文件?

标签 c++ gradle bazel boost-build

我正在尝试从Boost.Build迁移到Bazel构建系统。我需要为正在构建库的目录编写Jamfile。

我的Jamfile是

project : usage-requirements <include>$(PROJECT_INSTALL) 
<linkflags>-lboost_system
;

lib CommonDataStructures : [ glob *.cpp ] : <link>static ;

install libCommonDataStructures
  : CommonDataStructures
  : <install-type>LIB
    <variant>release:<location>"$(PROJECT_INSTALL)/lib"
    <variant>debug:<location>"$(PROJECT_INSTALL)/libdebug"
  : release debug
  ;

如何为Bazel编写BUILD文件?

最佳答案

抱歉,但是我没有Boost.Build的经验,但是我会尽力的。

BUILD文件可能仅包含:

cc_library(
  name = "common_data_structures",
  srcs = glob(["*.cpp"]),
)

要构建它,只需运行bazel build //:common_data_structures。 Bazel将同时生成静态库和共享库,并且当其他cc_library或cc_binary依赖它时,默认情况下它将静态链接。查看我们的c++ rules documentation以查看所有属性。这对您有帮助吗?

关于c++ - 如何为此Boost.Build Jamfile编写Bazel BUILD文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43330414/

相关文章:

c++ - 如何在不关闭预编译 header 的情况下修复 C1010 错误?

bazel - 我可以从 .bzl 文件加载通用规则吗?

java - IntelliJ IDEA 不在构建时复制资源

unit-testing - Netbeans 11.2未找到测试

android - 主项目和 aar 模块之间的依赖冲突 - Volley

javascript - 巴泽尔 - 错误 : missing input file '//server:files/src/index.js'

cmake - bazel 从 cmake 连接 find_package

c++交叉遗传算法push_back vector 覆盖旧的

c++ - 抽象类中的公共(public)构造函数是代码气味吗?

c++ - 将 char 转换为 bool(将 bool 传递给 main)