如何在 windows 配置 libtorch c++ 前端库?

下载 pytorch 已经编译好的库:

此库不带 gpu,主要方便演示。支持 win7 win10 系统。

下载地址:https://download.pytorch.org/libtorch/cpu/libtorch-win-shared-with-deps-latest.zip


1. cmake 配置

1.1 新建 CMakeLists.txt 并添加以下内容:
# 设置 cmake 版本限制
cmake_minimum_required(VERSION 3.0 FATAL_ERROR) # 项目名称
project(libtorch-app) # 设置 libtorch-win-shared-with-deps-latest 目录,主要让 find_package 可以找到 Torch 的 TorchConfig.cmake 配置文件以及其他相关 Config.cmake 配置文件 set(CMAKE_PREFIX_PATH "./libtorch-win-shared-with-deps-latest") find_package(Torch REQUIRED) add_executable(libtorch-app main.cpp)
target_link_libraries(libtorch-app "${TORCH_LIBRARIES}")
set_property(TARGET libtorch-app PROPERTY CXX_STANDARD 11)
1.2 在 CMakeLists.txt 同级目录新建一个 main.cpp 文件,添加以下内容:
#include <torch/torch.h>
#include <iostream>
int main()
{
torch::Tensor tensor = torch::rand({ 9,9 });
std::cout << tensor << std::endl;
return 0;
}
1.3 然后在 CMakeLists.txt 同级目录下打开一个命令行(按住 Shift + 鼠标右键即可)输入以下命令:

cmake -DCMAKE_BUILD_TYPE=Release -G "Visual Studio 14 Win64"

执行完以上命令后生成 libtorch-app.sln 解决方案文件,打开编译即可。


2. 手动配置(仅适用于CPU,GPU需要自行另外添加相关依赖)

新建一个属性页并添加当当前配置文件中

2.1. 在 C/C++->常规->附加包含目录里面添加以下内容并开启多处理器编译:
$(SolutionDir)3rdparty\libtorch-win-shared-with-deps-latest\include\torch\csrc\api\include
$(SolutionDir)3rdparty\libtorch-win-shared-with-deps-latest\include
2.2. 在 连接器->输入->附加依赖项里面添加以下内容:
$(SolutionDir)3rdparty\libtorch-win-shared-with-deps-latest\lib\torch.lib
$(SolutionDir)3rdparty\libtorch-win-shared-with-deps-latest\lib\caffe2.lib
$(SolutionDir)3rdparty\libtorch-win-shared-with-deps-latest\lib\c10.lib
2.3. 在 调试->环境 里面添加环境变量

path=%path%;$(SolutionDir)3rdparty\libtorch-win-shared-with-deps-latest\lib

2.4 新建一个 main.cpp 文件,添加以下内容并使用 x64 模式编译即可:
#include <torch/torch.h>
#include <iostream>
int main()
{
torch::Tensor tensor = torch::rand({ 9,9 });
std::cout << tensor << std::endl;
return 0;
}

输出一个随机数值9x9矩阵:

0.2407  0.9294  0.5167  0.3774  0.9841  0.6530  0.9825  0.5814  0.4903
0.8882 0.5111 0.7414 0.7563 0.1666 0.2542 0.2624 0.0668 0.4328
0.0481 0.4880 0.6299 0.5140 0.0379 0.9187 0.3033 0.1510 0.6705
0.1983 0.6113 0.2893 0.0700 0.8585 0.3588 0.3891 0.0551 0.0458
0.7738 0.0797 0.0611 0.1781 0.3898 0.0238 0.0361 0.3905 0.2005
0.5774 0.5769 0.6275 0.3511 0.9609 0.3415 0.7188 0.5650 0.5670
0.0828 0.2139 0.5793 0.4089 0.5725 0.3938 0.8250 0.2695 0.6470
0.4106 0.3609 0.9982 0.8789 0.0134 0.8454 0.3880 0.0937 0.9598
0.1523 0.9423 0.2989 0.6404 0.0997 0.2817 0.0706 0.1867 0.1980
Variable[CPUFloatType]{9,9} ]
``

如何在 windows 配置 libtorch c++ 前端库?的更多相关文章

  1. 如何在WINDOWS下编译BOOST C++库 .

    如何在WINDOWS下编译BOOST C++库 cheungmine 2008-6-25   写出来,怕自己以后忘记了,也为初学者参考.使用VC8.0和boost1.35.0.   1)下载boost ...

  2. VS2013配置Caffe卷积神经网络工具(64位Windows 7)——准备依赖库

    VS2013配置Caffe卷积神经网络工具(64位Windows 7)--准备依赖库 2014年4月的时候自己在公司就将Caffe移植到Windows系统了,今年自己换了台电脑,想在家里也随便跑跑,本 ...

  3. 如何在Windows平台下安装配置Memcached

    Memcached是一个自由开源的,高性能,分布式内存对象缓存系统. Memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitzpatric为首开发的一 ...

  4. windows下Anaconda3配置TensorFlow深度学习库

    Anaconda3(python3.6)安装tensorflow Anaconda3中安装tensorflow3是非常简单的,仅需通过 pip install tensorflow 测试代码: imp ...

  5. 如何在windows server 2008上配置NLB群集

    参考:http://zlwdouhao.blog.51cto.com/731028/781828 前些天写了一篇关于NLB群集模式多播和单播的简单介绍.那么下面我们一起来探讨一下,如何在windows ...

  6. 4.1. 如何在Windows环境下开发Python

    4.1. 如何在Windows环境下开发Python 4.1. 如何在Windows环境下开发Python 4.1.1. Python的最原始的开发方式是什么样的 4.1.1.1. 找个文本编辑器,新 ...

  7. 如何在Windows平台使用VS搭建C++/Lua的开发环境

    转自:http://ju.outofmemory.cn/entry/95358 本文主要介绍如何在Windows平台利用VS搭建C++/Lua开发环境.这里的“C++/Lua开发环境”主要指的是C++ ...

  8. 如何在Windows Server 2008 R2没有磁盘清理工具的情况下使用系统提供的磁盘清理工具

    今天,刚好碰到服务器C盘空间满的情况,首先处理了临时文件和有关的日志文件后空间还是不够用,我知道清理C盘的方法有很多,但今天只分享一下如何在Windows Server 2008 R2没有磁盘清理工具 ...

  9. 配置自己的OpenGL库,glew、freeglut库编译,库冲突解决(附OpenGL Demo程序)

    平台:Windows7,Visual C++ 2010 1. 引言 实验室的一个项目,用到OpenGL进行实时绘制,还用到一些其他的库,一个困扰我很久的问题就是编译时遇到的各种符号未定义,符号重定义之 ...

随机推荐

  1. db2 连接报错connect。 ERRORCODE=-4499, SQLSTATE=08001(转载)

    在使用data studio连接远程DB2数据库时报错如下: [jcc][Thread:main][SQLException@5b775b77] java.sql.SQLException [jcc] ...

  2. vue中axios调用接口和用node.js跨域

    <script>const API_PROXY = 'https://bird.ioliu.cn/v1/?url='import axios from 'axios'export defa ...

  3. CSS——你所不知的 CSS ::before 和 ::after 伪元素用法(转)

    你所不知的 CSS ::before 和 ::after 伪元素用法 CSS 有两个说不上常用的伪类 :before 和 :after,偶尔会被人用来添加些自定义格式什么的,但是它们的功用不仅于此.前 ...

  4. C# 静态构造函数使用

    当我们想初始化一些静态变量的时候,就需要用到静态构造函数了.这个静态构造函数属于类,而不属于实例,就是说这个构造函数只会被执行一次,即:在创建第一个实例或引用任何静态成员之前,由.NET自动调用. 现 ...

  5. 1.svn+apache整合

    1:安装svn客户端, 并且在客户端下,能建立仓库,在自己的硬盘上,建一个库利用 file:///D:/xx/yy来管理自己的仓库. 2:把svn与apache整合. 2.1为什么与apache一起整 ...

  6. 实现cell显示一个删除button

    假设想实现滑动cell时,cell右边就能显示一个删除button,则要实现tableview 下边方法: - (void)tableView:(UITableView *)tableView com ...

  7. 记一次线上Kafka消息堆积踩坑总结

    2018年05月31日 13:26:59 xiaoguozi0218 阅读数:2018更多 个人分类: 大数据   年后上线的系统,与其他业务系统的通信方式采用了第三代消息系统中间件Kafka.由于是 ...

  8. 将php和mysql命令加入到环境变量中

    方法一:直接运行命令export PATH=$PATH:/usr/local/webserver/php/bin 和 export PATH=$PATH:/usr/local/webserver/my ...

  9. MySQL的外键约束:Cascade/Restrict/No action/SET NULL :级联操作

    转自:http://blog.csdn.net/cnjsnt_s/article/details/5548280 具体使用时需要参考:http://blog.csdn.net/codeforme/ar ...

  10. linux基础教程---内容操作

    一.寻找文件里的指定内容 寻找文件里的指定内容,输出内容所在行的所有信息 grep    被搜索内容    文件路径名 >grep     var       passwd       //在 ...