QT配置libtorch(一步到位!!!防止踩坑)

QT配置libtorch

Qt下载

Qt点击下载

Qt的安装选择MSVC2017 64-bit(一定要安装,这关乎后面的配置!!!),其他的根据自己的选择进行安装

QT配置MSVC

Visual Studio点击安装

这里需要安装VS以便后面配置MSVC2017(最好安装VS2017与MSVC进行对应,安装最新版本的也可以,后面会说到方法)

Windows SDK点击安装

如果你的VS版本是2017的就下载进行安装,只需要选择当中的Debug一行安装,其他的取消勾选。

进入QT,点击工具,点击选项

进入之后选择Kits查看MSVC2017是否出现黄色感叹号或者错误,如果错误则需要点击Manage进行配置。

以下是出现黄色感叹号或者错误需要执行的操作:

点击添加,点击MSVC,点击C++
建议直接搜索,每个人的版本不一样,位置可能也不一样,我的在C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build文件夹下。
选择刚刚配置MSVC。

QT配置Libtorch

libtorch点击下载

根据自己配置的Qt是release版本还是Debug版本进行对应下载

将下载好的libtorch的include和lib目录添加至环境变量(注意自己的版本

新建一个Qt工程文件,选择后用MSVC进行编译

进入工程文件.pro更改相应的配置

根据自己的路径进行更改

cpp 复制代码
INCLUDEPATH += E:\libtorch\libtorch-debug\include
INCLUDEPATH += E:\libtorch\libtorch-debug\include\torch\csrc\api\include

LIBS += -LE:/libtorch/libtorch-debug/lib \
            -lc10\
            -lc10_cuda\
            -ltorch\
            -ltorch_cuda\
            -ltorch_cpu

LIBS += -INCLUDE:"?ignore_this_library_placeholder@@YAHXZ"

这里需要将torch相关的头文件放在最前面否则会报一堆的符号错误 ,或者像以下这样添加。

#undef slots

#include <torch/torch.h>

#define slots Q_SLOTS

cpp 复制代码
#include "torch/torch.h"
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QDebug"
//#undef slots
//#include <torch/torch.h>
//#define slots Q_SLOTS

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    if (torch::cuda::is_available())
        qDebug() << "cuda 可用";
    else
        qDebug() << "cuda 不可用";

}

MainWindow::~MainWindow()
{
    delete ui;
}

显示cuda可用,即算配置成功了

相关推荐
weixin_449173659 小时前
java使用poi保存表格和图片到word文件中
java·开发语言·word
好家伙VCC9 小时前
# 光计算驱动的编程范式革新:用Python实现光子神经网络模拟器在传统电子计算架构逼近物理极限的今天,**光计算**正
java·开发语言·python·神经网络
梵刹古音9 小时前
【C++】 虚指针(vptr)与虚函数表(vtable)
开发语言·c++
yqj2349 小时前
【无标题】
java·开发语言
游乐码10 小时前
c#结构体
开发语言·c#
Coder_Boy_10 小时前
JDK17_JDK21并发编程:资深架构常用模式+最佳实践
java·开发语言·spring boot·架构
大黄说说10 小时前
Python 实战指南:一键批量旋转 PDF 页面方向
开发语言·python·pdf
郁闷的网纹蟒10 小时前
虚幻5---第16部分---敌人(中)
开发语言·c++·ue5·游戏引擎·虚幻
毕设源码-邱学长10 小时前
【开题答辩全过程】以 基于Java的通信运营商流量管理系统设计与实现为例,包含答辩的问题和答案
java·开发语言
一阵寒风10 小时前
ComfyUI本地部署指南
开发语言·人工智能·python