Windows平台使用Bazel编译TensorFlow详细流程

目录

    • 前期准备
      • 硬件
      • 软件
    • 编译步骤
      • 1.安装python依赖
      • 2. 下载并添加Bazel到环境变量
      • 3. 安装MSYS2并添加环境变量
      • 4. 添加Bazel_VS与BAZEL_VC_FULL_VERSION环境变量
      • 5. 克隆TensorFlow源码
      • 6. 编译配置
      • 7. 执行编译命令
      • 8. 编译成功
    • 问题合集
      • 1. 构建python .whl软件包

官方Windows平台编译文档

前期准备

不适用于Linux系统!!!!!!!!!

硬件

  • i7-8700
  • 内存16G
  • win10操作系统

软件

请自备科学上网工具,部分依赖安装时会从google网盘下载

  • VS2019(VC及Windows SDK)
  • Bazel 3.1.0(Bazel为Google官方的Cmake替代品)
  • MSYS2
  • python 3.6.7(官网下载的本地安装包,非微软应用商店版本)
  • TensorFlow 源码(v2.4.2)

C盘预留20~30G硬盘空间,因为Bazel会在C盘用户目录下保存依赖缓存
Windows平台使用Bazel编译TensorFlow详细流程_第1张图片

编译步骤

以下所有指令均在Windows PowerShell执行

1.安装python依赖

pip install six numpy wheel
pip install keras_applications==1.0.6 --no-deps
pip install keras_preprocessing==1.0.5 --no-deps

2. 下载并添加Bazel到环境变量

下载地址:bazel 3.1.0

  1. 下载完成后,解压到本地自己喜欢存放的位置(压缩包只有一个.exe文件),并将其重命名为bazel.exe。
  2. 将其路径添加到环境变量->系统变量->Path里

系统路径
Windows平台使用Bazel编译TensorFlow详细流程_第2张图片
环境变量
Windows平台使用Bazel编译TensorFlow详细流程_第3张图片

3. 安装MSYS2并添加环境变量

官方下载: 地址

  1. 将安装目录下的\usr\bin目录添加到系统变量Path里。假设我本地安装路径为E:\msys64,对应环境变量设置如下图
    Windows平台使用Bazel编译TensorFlow详细流程_第4张图片
  2. 打开powershell输入以下指令
pacman -S git patch unzip

4. 添加Bazel_VS与BAZEL_VC_FULL_VERSION环境变量

这两个必须一起填,否则会报找不到VC的错误,BAZEL_VC_FULL_VERSION设置自己的VC版本,可以进入\VC\Tools里的文件夹查看当前有哪些版本的VC,如果没有请使用VIsual Studio Installer安装。

Windows平台使用Bazel编译TensorFlow详细流程_第5张图片

5. 克隆TensorFlow源码

  1. 在powershell进入到源码储存空间后,执行以下指令
git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow
# 切换tag 2.4.2版本,2.3的版本编译在当前环境出现报错
git checkout v2.4.2

6. 编译配置

  1. 进入tensorflow源码根目录,执行以下指令进行配置
# 二选一
# cmd指令
configure.cmd
# python脚本
python configure.py
# 两者一样的效果,喜欢哪个选哪个即可
  1. 脚本一个七个步骤根据自己需求选择即可

CUDA版本请自行根据官方教程探索,本文章只是用于TensorFlow Lite编译的前期环境测试

Windows平台使用Bazel编译TensorFlow详细流程_第6张图片

7. 执行编译命令

在tensorflow源码根目录执行以下指令,并确保能连通外网

bazel build //tensorflow/tools/pip_package:build_pip_package --define=no_tensorflow_py_deps=true --local_ram_resources=4096 --cxxopt=-std=c++11

8. 编译成功

如果提示404 time out,可重新执行编译指令

Windows平台使用Bazel编译TensorFlow详细流程_第7张图片

问题合集

1. 构建python .whl软件包

请自行查看官方步骤: 构建软件包

你可能感兴趣的:(深度学习,Tensorflow,tensorflow,windows)