极智开发 | centos7 源码编译 bazel

580 阅读2分钟

本文正在参加「金石计划 . 瓜分6万现金大奖」

欢迎关注我的公众号 [极智视界],获取我的更多笔记分享

  大家好,我是极智视界,本文介绍一下 centos7 源码编译 bazel 的方法

   tensorflow 的源码编译依赖于 bazel,所以先进行 bazel 的源码编译。

   下面开始。

  • (1) 安装依赖
sudo yum update
sudo yum install -y java-11-openjdk
sudo yum install -y java-11-openjdk-devel
sudo yum install -y protobuf-compiler zip unzip
  • (2) 知悉要安装的 bazel 的版本

   这里要安装 bazel 的一切动机源于 要源码编译tensorflow,所以务必安装受支持的 bazel 版本,那么如何知道自己该安装什么版本的 bazel 版本呢?

   首先 clone tensorflow 的源码,然后在 tensorflow/configure.py 中找到介于 _TF_MIN_BAZEL_VERSION_TF_MAX_BAZEL_VERSION 之间的任意版本。如下,可以看到我这里可选择的 bazel 版本介于 0.24.1 ~ 0.26.1 之间。

  • (3) 下载源码包

  bazel 下载地址:github.com/bazelbuild/…

   这里我选择了 0.26.1 版本的 bazel-0.26.1-dist.zip,如下。

   切记: 必须下载发行版,否则会报各种依赖及变量问题,如: ERROR: Must specify PROTOC if not bootstrapping from the distribution artifact

  • (4) 开始编译
# 编译解压后
cd ~/bazel-src
​
# 运行编译脚本
EXTRA_BAZEL_ARGS='--host_javabase=@local_jdk//:jdk' ./compile.sh
  • (5) 编译输出

   编译成功后的输出会在 output/bazel 中。这是一个独立的 bazel可执行二进制文件,可以直接建立软链 ln -s ~/bazel-src/output/bazel /usr/bin/bazel,这样就可以直接使用了。编译成功的输入如下,到此就大功告成了。

   这样下篇可以介绍 tensorflow 的源码编译了。

  好了,以上分享了 centos7 源码编译 bazel 的方法。希望我的分享能对你的学习有一点帮助。


 【公众号传送】

《极智开发 | centos7源码编译bazel》


logo_show.gif