bazel生成C++动态链接库so文件

本文介绍了如何使用bazel工具生成C++动态链接库so文件。内容涉及bazel的优势,以及在项目中与其他编译方式协同工作的可能性。文章适合熟悉gcc和bazel基本操作的读者,通过学习可以掌握利用cc_binary规则创建动态链接库的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

bazel是Google开源的一款编译工具,具有支持多种语言,编译速度快,处理依赖方便,编写编译规则简单的优点。

有人说,bazel是流氓工具,为什么呢?因为它不仅QJ你们组,还QJ你的兄弟组。意思是说一个组用了bazel,其他组为了协同工作,也必须用bazel,否则作为一个项目整体没法管理。

这在一定程度上是对的,因为一个项目想打包成一个整体,如果其中一部分使用bazel编译,另外一部分写makefile编译,那么这两个部分没法生成一个完整的动态链接库给外界使用。

退而求其次,能不能接受一个项目提供多个动态链接库打包呢?如果能接受,那么在项目一部分使用bazel编译,另一部分写makefile编译的情况下,也是可以管理的。因为使用bazel可以生成动态链接库so文件,makefile也可以,把两个放一起,问题就解决了。

这篇文章简单介绍使用bazel生成C++动态链接库文件的方法。

需要的前提知识有:
1. 熟悉gcc的编译和链接命令;
2. 熟悉bazel的使用方法,知道WORKSPACE和BUILD文件的作用;
3. 熟悉bazel的规则,比如cc_binary,cc_import,可以参考https://docs.bazel.build/versions/master/be/c-cpp.html

使用bazel生成动态链接库文件其实很简单,使用cc_binary规则就可以了,如果你仔细阅读baze

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值