[paddle][基础篇-1]-windows下源码编译paddle

3 篇文章 0 订阅
2 篇文章 0 订阅

本教程为如何在windows上编译paddle深度学习库

1.准备工作

2.下载源码

首先开启 我们所向往的,体验github极速下载速度

git clone https://github.com/PaddlePaddle/Paddle.git

在这里插入图片描述
然后切换到指定版本进行开发,因为比较稳定,移植时也方便,也可以直接使用master进行开发

# 查看所有版本,空格键浏览更多
git tag
# ...
# v1.7.2         
# v1.8.0         
# ...      
# v1.8.4         
# v1.8.5         
# v2.0.0         
# ...
# v2.0.0-rc0     
# v2.0.0-rc1     # 本教程使用此版本
# v2.0.1           
git checkout v2.0.0-rc1
# Updating files: 100% (2720/2720), done.
# Note: switching to 'v2.0.0-rc1'.   
# ...
# HEAD is now at d82d59e6e7 [cherry-pick] Fix amp support fleet(#29505)    

3.准备python环境

如果电脑没有python3.5以上的话需要安装一个,
然后安装依赖包

pip install numpy protobuf wheel

如果你电脑上有多个python,那么你要明确知道你想用那个路径下的python来编译。

4.开始编译

打开cmd,先设置pytohn相关环境变量,然后接着打开cmake-gui

# cmd
# 假设我想用的python路径为 C:\Python36
# 指定python的lib路径
set PYTHON_LIBRARY=C:/Python36/libs/python36.lib
# 指定python的头文件路径
set PYTHON_INCLUDE_DIRS=C:/Python36/include
# 将python路径加到环境变量
set PATH=C:/Python36;%PATH%
# 启动cmake-gui
cmake-gui
  • 然后打开cmake-gui,输入源码路径,和构建路径,
    在这里插入图片描述
  • 然后点击Configure进行配置,提示目录不存在,选择创建
    在这里插入图片描述
  • 然后选择本机对应的vs版本,和需要生成的平台(这步很关键),然后点击Finish
    在这里插入图片描述
  • 最后开始配置,需要改几个关键参数即可
    搜索install_prefix出来一行,输入安装路径,E:/work/lib/Paddle/install代表我想安装的路径
    在这里插入图片描述
  • 搜索ON_INFER出来一行,勾上代表需要编译推理库
    在这里插入图片描述
  • 搜索WITH_GPU出来一行,勾上代表需要编译GPU,本教程编译CPU版本
  • 搜索CMAKE_BUILD_TYPE出来一行,默认代表编译Release
  • 搜索WITH_MKL出来一行,默认代表使用MKL库来加速推理
  • 搜索MSVC_STATIC_CRT出来一行,默认代表使用MT(意思是静态链接,动态链接是MD)方式来编译,这是官方介绍,这个建议不要改,需要改动很多地方才能顺利编译

一切参数配置完后,再次点击Configure,再点击Generate,项目文件生成完成后
然后点击Open Project,然后熟悉的vs就出来了,等于你手动点击了build/paddle.sln项目启动文件,
接着选择平台为 x64,配置为 Release,开始编译
编译基本没有什么问题

如果编译过程中出现如下类似错误,表示当前网络无法直接从github克隆代码

fatal: unable to access 'https://github.com/google/glog.git/

因为paddle依赖了别的github上的仓库,因此会联网下载,而此时就需要 我们所向往的来加速下载了,不然大概率会编译失败,
因此打开 我们所向往的后,vs还不能自动使用 我们所向往的的代理工具,需要手动设置一下,
本篇文章使用的是vs 2015,对应路径为C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe.config

        <system.net>
            <settings>
                <ipv6 enabled="true"/>
            </settings>
        </system.net>

改为

        <system.net>
        <defaultProxy useDefaultCredentials="true" enabled="true">
            <proxy proxyaddress="http://127.0.0.1:4780"/>
        </defaultProxy>
        <settings>
            <ipv6 enabled="true"/>
            <servicePointManager expect100Continue="false" />
        </settings>
        </system.net>

即使用本地代理,最后重启vs生效,最后开始编译

Git报错:OpenSSL SSL_connect: Connection was reset in connection to github.com:443
   一般是由代理导致的
解决方式
    找到代理的端口,如1196
    在git中配置代理
    git config --global http.proxy 127.0.0.1:1196 # 为全局的 git 项目都设置代理
    git config --local http.proxy 127.0.0.1:1196 # 为某个 git 项目单独设置代理
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

亡命天涯ba

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值