码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 开源组件与中间件的学习笔记2


    bazel编译

    基本内容

    小飞今天在调试一个代码, 头皮发麻, 第一次使用 gdb和bazel , 小飞感觉这东西真的难,看了一下新手教程一看就会, 一上手就不知道怎么搞了, 于是跑来问问老张, 这东西应该怎么看。

    小飞: 老张, 最近在学bazel编译, 看别人代码中写的好复杂, 看不懂啊。

    老张; 这东西上手是比较简单, 但是一般项目中用的比较复杂, 这样吧, 我们慢慢来梳理。 我先问问你什么是bazel, 和cmake有什么区别 。

    小飞: bazel 就是一个项目管理的工具, 像java里面有maven, C++里面有pip install ,都是可以直接将你的包导入到头文件和库文件检索目录中,然后你项目中直接用就可以import了, 但是C++这方面如果你要用的话就的先去下载源码, 然后编译成为你自己机器中的二进制文件, 放进来默认索引目录。 当然你也可以直接拷贝别人的so文件和头文件到里面来, 然后直接使用, 但是一般这种so文件你看不到代码, 而且比较大, 别人都是直接给你提供源码, 自己编译的。 这样你查找代码也方便。

    老张: 那你怎么编译别人的代码呢?

    小飞: 这个就是一般用cmake, 也是类似bazel的工具, 或者用个脚本启动cmake, 然后编译完成将头文件和库放到索引目录。 但是听说cmake不支持分布式编译, 而且在项目管理上容易出现冗余, 所以现在很多大型的项目都是用bazel。

    老张: 是的, bazel也是类似

  • 相关阅读:
    C#中LinkedList、Queue<T>和Stack<T>的使用
    删除表数据
    Java关于由子类构造器生成的父类对象的反射问题
    一本通1073;救援(c++)
    Java:实现使用线性探测作为冲突的开放寻址的哈希表算法(附完整源码)
    关于SRE在金融行业落地的探讨
    Python开源项目周排行 2023年第36周
    【FPGA教程案例12】基于vivado核的复数乘法器设计与实现
    【SpringSecurity】九、Base64与JWT
    前端基础建设与架构23 npm scripts:打造一体化的构建和部署流程
  • 原文地址:https://blog.csdn.net/liupeng19970119/article/details/126334094
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号