win10 64bit+ qt5.12.0 + msvc2017 + libtorch(pytorch)+cuda10.1+cudnn7.6配置

因为配置过程遇到了各种坑,资料又很少,记录下来,相信其他人用得到

各个工具的安装不再详述,需要说明下pytorch下载https://pytorch.org/里的libtorch-win-shared-with-deps-debug-1.4.0.zip debug版,解压完4个G。因为我下的是下图所示版本,所以cuda对应下载版本cuda_10.1.168_425.25_win10.exe,cudnn下载的是cudnn-10.1-windows10-x64-v7.6.5.32.zip,我的电脑的显卡是P1000的。qt,msvc2017全部是64位的。

编译器尽量别用mingW,之前是跨平台开发,用这个很好用,这次配置遇到了很多坑,没填成功,最后转战msvc2017,因为后期软件在linux下使用可能性不大。

1、qt的pro里库引用如下

INCLUDEPATH+=D:/libtorch/include
INCLUDEPATH+=D:/libtorch/include/torch/csrc/api/includeLIBS += -LD:\libtorch\lib\ -lc10 \
-lcaffe2_module_test_dynamic \
-ltorch

2、编译阶段遇到的问题(这段摘的别人发csdn的,我的没记录下来)
我仅仅是 #include <torch/torch.h> 就爆了一堆的什么语法错误,这些错误是在libtorch的头文件中的。 [code=cpp] D:\Qt\libtorch\include\ATen/core/TensorBody.h(1000): warning C4522: “at::Tensor”: 指定了多个赋值运算符 D:\Qt\libtorch\include\ATen/core/ivalue.h(290): error C2061: 语法错误: 标识符“IValue” D:\Qt\libtorch\include\ATen/core/ivalue.h(290): error C2238: 意外的标记位于“;”之前 D:\Qt\libtorch\include\ATen/core/ivalue.h(294): error C2988: 不可识别的模板声明/定义 D:\Qt\libtorch\include\ATen/core/ivalue.h(294): error C2059: 语法错误:“return” D:\Qt\libtorch\include\ATen/core/ivalue.h(294): error C2653: “Tag”: 不是类或命名空间名称 D:\Qt\libtorch\include\ATen/core/ivalue.h(294): error C2238: 意外的标记位于“;”之前 D:\Qt\libtorch\include\ATen/core/ivalue.h(295): error C2146: 语法错误: 缺少“;”(在标识符“toGenericDict”的前面) D:\Qt\libtorch\include\ATen/core/ivalue.h(295): error C2270: “toGenericDict”: 非成员函数上不允许修饰符 D:\Qt\libtorch\include\ATen/core/ivalue.h(61): error C2653: “Tag”: 不是类或命名空间名称 D:\Qt\libtorch\include\ATen/core/ivalue.h(61): error C20

解决办法参考:https://github.com/pytorch/pytorch/issues/24308,百度没搜到,bing国际版里搜到的这个答案。
解决办法就是:
1.在引用 #include <torch/torch.h> 的地方,这样写
#undef slots
#include <torch/torch.h>
#define slots Q_SLOTS
2.在报错的D:\libtorch\include\ATen/core/ivalue.h头文件中
找出如下3行内容,注释掉,一共有6处。

/// \cond DOXYGEN_CANNOT_HANDLE_CONSTRUCTORS_WITH_MACROS_SO_EXCLUDE_THIS_LINE_FROM_DOXYGEN
C10_DEPRECATED_MESSAGE("IValues based on std::vector<T> are potentially slow and deprecated. Please use c10::List<T> instead.")
/// \endcond

ok,不再报错,完美解决,跑出结果。

win10 64bit+ qt5.12.0 + msvc2017 + libtorch(pytorch)+cuda10.1+cudnn7.6配置相关推荐

  1. QT5.12.0警告 zero as null pointer constant

    在QT5.12.0当中输入代码: 出现这个提示: 原因是: C++中,使用0表示空指针 C++11中,使用nullptr来表示空指针 QT5.12.0中使用C++11 解决方法: 把"0&q ...

  2. Anaconda环境下tensorflow1.12.0保姆式安装及相关奶妈级配置

    1.安装Anaconda 并更改默认镜像环境 1.1 下载最新的Anaconda安装文件 Anaconda下载网址:https://www.anaconda.com/products/individu ...

  3. win10下Qt5.12.3配置OpenCV4.5.3

    软件准备 64位win10系统 Qt 5.12.3 Cmake 3.21.1 OpenCV 4.5.3 Qt安装包下载 QT版本官方下载地址:http://download.qt.io/archive ...

  4. Qt5.12.0 VirtualKeyboard

    Linux 系统Qt安装虚拟键盘 本人正在做Linux Qt开发,需要虚拟键盘,看了网上很多说将qt源码中的qtvirtualkeyboard目录编译一下在安装就可以使用了,按照操作方法弄了一遍,在运 ...

  5. VS2017中配置QT5.12开发环境

    VS2017中配置QT5.12开发环境 一.安装VS2017 二.安装QT5.12.0 1.下载 2.安装 二.在VS2017中配置QT 三.在VS2017中创建QT工程 一.安装VS2017 关于V ...

  6. Qt5.12+VS2017联合开发环境配置及注意事项

    Qt5.12+VS2017问题记录 qt安装 安装官网下载在线安装包,选择MSVC和MinGW编译工具,以及需要的Qt Chart和Data Visualization模块.选择Qt Creator. ...

  7. C++ VS2017 QT5.12开发在xp环境下运行 [2019]亲测推荐

    项目是C++在vs2017+QT5.12写的,在win7,win8,win10运行无任何问题. (虽然XP已经被淘汰,但在中国至少还有6%的份额,尤其企业.研究所等.尝试此还是有意义的--) 但根据需 ...

  8. Ubuntu 18.4 qt5.12 安装搜狗拼音输入法

    Ubuntu 18.4 qt5.12 安装搜狗拼音输入法 安装fcitx 使用命令行模式安装 apt install fcitx 搜狗拼音 下载搜狗输入法 搜狗输入法下载地址 安装搜狗输入法 dpkg ...

  9. Ubuntu 18.04 安装Qt 5.12.0

    Ubuntu 18.04 安装Qt 5.12.0 1.安装包下载 2.安装QT 3.配置系统路径 4.配置QT creator 6.测试工程 1.安装包下载 官方下载地址 也可以下载到其他版本:htt ...

最新文章

  1. 基于持久内存的 单机上亿(128B)QPS -- 持久化 k/v 存储引擎
  2. JQuery UI之Autocomplete(3)属性与事件
  3. 亚马逊出的平板电脑_美国最畅销的安卓平板电脑,还只有2GB内存
  4. 手机距离传感器坏了有什么影响_适合手机兼职的工作有什么影响吗
  5. Spring Boot application.yml文件语法
  6. 【luogu P2341 [HAOI2006]受欢迎的牛】 题解
  7. 黑客攻击公司化:网络犯罪也有商业模式也有CEO
  8. 解读升压电路(BOOST)与降压电路(BUCK)
  9. 安装黑苹果系统前请看:macOS Mojave 的硬件兼容性列表
  10. 苹果Mac更新系统版本失败如何解决?
  11. windows配置指定网段流量走虚拟专用网络
  12. Autojs 3.0文档学习之设备信息
  13. 触宝发布2018年第四季度财报 净收入增长147%
  14. 微信小程序使用 checkbox 如何修改样式?
  15. 【电脑开机没反应的常见原因和解决方法】
  16. ti8148 dvrrdk开发小结
  17. 移远EC20--1 AT命令初始2
  18. 【JavaSE】继承 你拿下继承了吗?一篇让你轻松拿下,简明扼要,超详解
  19. 【51Nod】-1326 遥远的旅途
  20. java 实体转map

热门文章

  1. Python: 字符串与字节流的两种转换方式
  2. elementui表格复制_封装element-ui表格,我是这样做的
  3. HTML表格的基本样式作业
  4. java计算机类在线学习管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
  5. mixly温度传感器、声音光线传感器
  6. java怎么画有角度_在Java中以特定角度画一条线
  7. js浮点运算、以及四舍五入
  8. 使用SSH隧道和Squid创建专用加密代理以进行真正的隐私浏览
  9. 华为p30p会用上鸿蒙系统吗,实锤!用华为p30p拍到银河的真相在此
  10. 大学英语B级统考之语法概要