Win10 下Visual Studio 2017源码编译Paddle

1.准备工作

  1. Visual Studio 2017
  2. Python 3.8.10
  3. CMake 3.22.0-rc2
  4. 熟悉官方文档: Windows下从源码编译-使用文档-PaddlePaddle深度学习平台Windows 7/8/10 专业版/企业版 (64bit) GPU版本支持CUDA 10.1/10.2/11.0/11.2,且仅支持单卡 Python 版本 3.6+/3.7+/3.8+/3.9+https://www.paddlepaddle.org.cn/documentation/docs/zh/install/compile/windows-compile.html

2. 下载源码

从GitHub官网下载Paddle(https://github.com/PaddlePaddle/Paddle)指定版本。

本文使用版本为Paddle-2.2.0: https://github.com/PaddlePaddle/Paddle/tree/v2.2.0。

3.准备python环境

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

pip install numpy protobuf wheel

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

4.开始编译

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

# cmd
# 假设需要使用的Python路径为 C:\Python38
# 指定python的lib路径
set PYTHON_LIBRARY=C:/Python38/libs/python38.lib
# 指定python的头文件路径
set PYTHON_INCLUDE_DIRS=C:/Python38/include
# 将python路径加到环境变量
set PATH=C:/Python38;%PATH%
# 启动cmake-gui
cmake-gui

2. 然后打开cmake-gui,输入源码路径,和构建路径,

3. 然后点击Configure进行配置,提示目录不存在,选择创建:

4. 然后选择本机对应的VS版本: Visual Studio 15 2017,和需要生成的平台(x64),然后点击Finish.

5. 最后开始配置,需要改几个关键参数即可:

a. 搜索install_prefix,输入安装路径,D:/projects/Paddle/install;

b. 搜索ON_INFER,勾选代表需要编译推理库:

c. 搜索WITH_GPU,勾选代表需要编译GPU,本教程编译CPU版本, 取消勾选;

d. 搜索CMAKE_BUILD_TYPE,默认代表编译Release;

e. 搜索WITH_MKL,默认代表使用MKL库来加速推理;

f. 搜索MSVC_STATIC_CRT,默认代表使用MT(意思是静态链接,动态链接是MD)方式来编译,这是官方介绍,建议不要改,需要改动很多地方才能顺利编译;

g. 下述选项选择 OFF:

g. 可能出现下述错误,再次点击“Configure”即可:

h. 一切参数配置完后,再次点击Configure,然后再点击Generate,即可生成项目文件。
i. 项目文件生成完毕后,即可通过Visual Studio 2017打开build/paddle.sln项目启动文件;接着选择平台为 x64,配置为 Release,开始编译。

修改文件:

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

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

此时,可以手动依次编译一下项目:

等待项目全部编译成功后,再编译整个工程。

Win10 下Visual Studio 2017源码编译Paddle相关推荐

  1. Windows10系统下Visual Studio 2017 使用VISP视觉库中的AprilTags进行实时姿态识别

    Windows10系统下Visual Studio 2017 使用VISP视觉库中的AprilTags进行实时姿态识别 前言 环境配置 报错记录 相关C++代码介绍 代码参数说明 运行结果 运行速度 ...

  2. Visual Studio 2017环境cmake编译opencv 4.3.0+opencv_contrib 4.3.0(保证成功,保姆级教学,呕心沥血)

    前言:为什么要装opencv_contrib opencv3的版本之后只包含基本内容,众多著名的检测算子(如SIFT.SURF和ORB等内容)因为版权问题转移到了一个名为xfeature2d的第三方库 ...

  3. Windows10 + Visual Studio 2017 + CMake +OpenCV编译、开发环境配置及测试

    由于最近需要使用OpenCV,本人需要在自己的PC上使用OpenCV,因此最近一直在研究如何使用Visual Studio编译OpenCV源代码并搭建开发环境,折腾了很长时间,查阅了很多相关资料,终于 ...

  4. visual studio 2017 和qt 编译 bitcon源代码

    visual studio 2017 qt 5.7.1(别人已经编译好的静态库,为什么用别人编译好的,自己编译老是编译错误,?) 1. 安装vcpkg.将应用程序内的lib编译成功.设置编译选项为MT ...

  5. VS2017序列号|Visual Studio 2017 激活码 序列号

    趁着这两天微软发布了Visual Studio 2017,安装体验了这个史上最强IDE最新版,分享一下自己的安装过程: 下载地址点击这里 该版本堪称史上最大IDE,随便勾了几个选项,就要占用几十个GB ...

  6. 《Introduction to 3D Game Programming with Directx 11》随书代码在 Win10 和 Visual Studio 2017上的修改

    <Introduction to 3D Game Programming with Directx 11>书中代码的修改以适配Win10 SDK(原版代码需依赖Microsoft Dire ...

  7. linux下Ubuntu交叉编译boost源码编译

    源码下载,选择需要的版本下载压缩包然后解压. https://boostorg.jfrog.io/ui/native/main/release/ 1.解压后执行脚本 ./bootstrap.sh 2. ...

  8. win10+ubuntu18.04搭建Android源码编译环境

    一.基本配置 本机硬件配置:cpu 4.0GHZ  6核12线程)+ RAM 32g ddr4 + 512G SSD(机械硬盘也行) 操作系统/软件环境配置:win10+VMware 16 + ubu ...

  9. WIN10下Visual Studio 2012的安装

    最近学网络编程需要用到VS,于是就从网上下载,过程那真是费劲.于是就整理下小编遇到的问题和最便捷的步骤分享给大家. 注:首先保证PC没有安装过VS,因为VS的各个版本不能同时存在,如果有比较老的版本可 ...

最新文章

  1. Python(9):函数
  2. 在Corporate Network里配置SAP Cloud Connector连接SAP云平台,需要设置代理
  3. 百度之后,电子银行还安全么?
  4. Vue中的computed属性
  5. oracle的基本数据类型(转载)
  6. Linux终端显示工作路径
  7. php 修改json数组的值,php – 无法通过str_replace更改JSON数组中的值
  8. 桥牌笔记:一定要飞张?
  9. c#学习5,处理异常
  10. 微信小程序不行了?连接应用场景面临挑战
  11. feign session 调用_Feign调用session丢失解决方案
  12. 2021-05-17 吾日三省吾身
  13. 使用C++对himawari8(9)卫星数据的读取
  14. 软件测试个人绩效模板,测试工程师kpi模板.doc
  15. chrome浏览器市场占有率居第一 份额58.09%
  16. 欧姆龙485通讯示例程序_PLC程序结构设计和技巧
  17. 查看windows显卡内存详细信息
  18. GC问题排查实战三-Parallel Scavenge和Parallel Old日志分析
  19. A40i使用笔记:安装python3.7(素装)
  20. ISIS——基本概念1(邻居建立、路由计算、报文封装)

热门文章

  1. asp.net控件开发技巧(2)关闭基类不必要的功能
  2. 对象序列化时候无法创建类似如此(king:astar)的元素名
  3. Linux 命令(96)—— ln 命令
  4. MySQL 对 CREATE TABLE IF NOT EXISTS SELECT 的处理
  5. SpringBoot26 利用 Ribbon + RestTemplate 调用远程服务资源
  6. Linux下修改TomcatJVM内存大小
  7. .Net 开源项目资源大全
  8. 麻将 (Standard IO)
  9. apache禁止访问文件或目录执行权限、禁止运行脚本PHP文件的设置方法
  10. 8 mv命令_Linux常用操作命令——文件和目录操作