Centos7上源码编译tensorflow

tensorflow官网:

https://www.tensorflow.org/install/source?hl=zh_cn

编译前概述:

本人编译的是tensorflowr1.13版本,据我所知,tensorflow每一个版本对构建工具都有所要求,需得与对应版本进行匹配。1.13版本所需要的工具版本为:

gcc5.3.0、python3.5及以上、cuda10.0、bazel0.21.0

最后就是,不管是编译哪个版本,都要有充分的信心,编译的过程中遇到一些奇奇怪怪的错误、在所难免。

安装工具:

1.1、安装python3

    参考文档:https://blog.csdn.net/lovefengruoqing/article/details/79284573

1.2、python3-dev、python3-pip

    sudo apt install python3-dev python3-pip

1.3、安装gcc5.3.0

       1.3.1、 sudo yum install libmpc-devel mpfr-devel gmp-devel

       1.3.2、curl ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-5.3.0/gcc-5.3.0.tar.bz2 -O

       1.3.3、tar xvfj gcc-5.3.0.tar.bz2

       1.3.4、cd gcc-5.3.0
                  ./configure --prefix=/usr/local/gcc-5.3.0 --enable-languages=c,c++ --disable-multilib
                  make -j 16     //j选项数字表示,你的cpu核数x2,目的是提高编译速度
                  make install

       1.3.5、export LD_LIBRARY_PATH=/usr/local/gcc-5.3.0/lib64:/usr/local/lib:$LD_LIBRARY_PATH
                  export PATH=/usr/local/gcc-5.3.0/bin:/usr/local/bin:$PATH

1.4、pip 软件包依赖项

    pip install -U --user pip six numpy wheel setuptools mock future>=0.17.1
    pip install -U --user keras_applications==1.0.6 --no-deps    
    pip install -U --user keras_preprocessing==1.0.5 --no-deps    

1.5、安装bazel(0.21.0)

    sudo yum remove bazel    ---卸载原先的bazel版本
    # 从 https://github.com/bazelbuild/bazel/releases 下载对应release安装   
    wget https://github.com/bazelbuild/bazel/releases/download/0.21.0/bazel-0.21.0-installer-linux-x86_64.sh 
    chmod +x bazel-0.21.0-installer-linux-x86_64.sh
    ./bazel-0.21.0-installer-linux-x86_64.sh --user

    注:--user 参数安装Bazel在系统的 $HOME/bin 目录并设置 .bazelrc 路径到 $HOME/.bazelrc ,

           所以需要在 ~/.bashrc 中添        加 export PATH="$PATH:$HOME/bin"

1.6、CUDA10.0安装

    可以去到官网里下载安装,这里因为运维事先已经安装好了。

    nvidia-smi命令可以查看gpu使用情况

下载tensorflow源代码:

    git clone https://github.com/tensorflow/tensorflow.git
    cd tensorflow
    git branch -a 查看远程分支
    git checkout r1.13 切换到指定分支

编译tensorflow:

    2.1 配置编译环境

          执行命令: ./configure

         Centos7上源码编译tensorflow_第1张图片

编译pip软件包(gpu):

bazel build --config=opt --cxxopt=-fabi-version=6 --incompatible_package_name_is_a_function=false --config=cuda --verbose_failures  //tensorflow/tools/pip_package:build_pip_package

编译c++软件版本(gpu):

bazel build --config=opt --cxxopt=-fabi-version=6 --incompatible_package_name_is_a_function=false --config=cuda --verbose_failures //tensorflow:libtensorflow_cc.so

编译成功截图:

Centos7上源码编译tensorflow_第2张图片

安装头文件(可选项,用于tensorflow c++开发):

 

mkdir /usr/local/include/tf
cp -r bazel-genfiles/ /usr/local/include/tf/
cp -r tensorflow /usr/local/include/tf/
cp -r third_party /usr/local/include/tf/
cp -r bazel-bin/tensorflow/libtensorflow_cc.so /usr/local/lib/

 

 

 

 

          

你可能感兴趣的:(博客)