在CentOS7.5上编译和安装TensorFlow的步骤

一. 安装Python3

1. 从https://www.python.org/downloads/,下载Python3.6.7

2. 编译python3.6.7

$ ./configure --prefix=/usr/local/python3 --enable-optimizations

$ make

3. 安装python3.6.7

# rm /usr/bin/python

# rm /usr/bin/python-config

# make install

# ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3

# ln -s /usr/bin/python3 /usr/bin/python

# ln /usr/local/python3/bin/python3.6m-config /usr/bin/python3-config

# ln -s /usr/bin/python3-config /usr/bin/python-config

# ln -s usr/local/python3/bin/pip3.6 /usr/bin/pip3

# ln -s /usr/bin/pip3 /usr/bin/pip

二. 安装bazel

1. 检查Java版本

$ rpm -qa | grep java

java-1.8.0-openjdk-headless-1.8.0.161-2.b14.el7.x86_64

java-1.8.0-openjdk-devel-1.8.0.161-2.b14.el7.x86_64

java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64

2. 下载Bazel(如果是tensorflow2.0版本,需要下载bazel2.0.0版本)

在https://github.com/bazelbuild/bazel/releases,下载bazel-0.15.0-dist.zip

3. 编译与安装Bazel

1)解压缩bazel-0.15.0-dist.zip

$ unzip bazel-0.15.0-dist.zip

2)编译bazel

$ ./compile.sh

3)复制bazel到系统目录

$ cd output

$ su

# cp bazel /usr/local/bin

三. 安装TensorFlow

1. 从https://github.com/tensorflow/tensorflow/releases下载tensorflow-1.12.0.tar.gz

2. 安装相关依赖软件

$ python3 -m pip install --user numpy scipy keras wheel

$ cd $HOME/.local

$ su

# cp –r * /usr/local/python3

或者:

# python3 –m pip install numpy scipy keras wheel

3. 编译与安装tensorflow-1.12.0.tar.gz

1)解压缩tensorflow-1.12.0.tar.gz

$ tar zxvf tensorflow-1.12.0.tar.gz

2)配置TensorLlow

$ cd tensorflow

$ ./configure

均选择默认选项即可。

3)编译tensorflow

a)编译支持CPU的软件包

$ bazel build --config=opt --copt=-msse4.1 --copt=-msse4.2 --copt=-mavx --copt=-mavx2 --copt=-mfma //tensorflow/tools/pip_package:build_pip_package

b)编译支持GPU的软件包

# bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package

4)生成whl软件包

$ bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg

5)安装TensorFlow软件包

# python3 -m pip install /tmp/tensorflow_pkg/tensorflow-1.12.0-cp36-cp36m-linux_x86_64.whl
————————————————
版权声明:本文为CSDN博主「weixin_43138209」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43138209/article/details/88202742

posted @   技术研究与问题解决  阅读(599)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
历史上的今天:
2019-04-28 Storm入门(十四)Trident API Overview
2019-04-28 Storm入门(十三)Storm Trident 教程
2019-04-28 Storm入门(十二)Twitter Storm: DRPC简介
2019-04-28 Storm入门(十)Twitter Storm: Transactional Topolgoy简介
2019-04-28 Storm入门(十一)Twitter Storm源代码分析之CoordinatedBolt
2019-04-28 Storm入门(九)Storm常见模式之流聚合
2019-04-28 Storm入门(八)Storm实战常见问题总结(持续更新)
点击右上角即可分享
微信分享提示