windows10+libtorch1.0.0 cpu版本+opencv4.0.0 cmake安装编译

前期准备

下载cmakehttps://cmake.org/download/ #安装时手动更改选项以添加到环境变量中
下载libtorchhttps://pytorch.org/get-started/locally/
下载opencvhttps://opencv.org

配置CmakeLists

新建一个名为CMakeLists.txt的文件,内容如下:

cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
project(test)

set(CMAKE_PREFIX_PATH "G:\\Program Files\\libtorch-win-shared-with-deps-latest\\libtorch\\share\\cmake\\Torch")
find_package(Torch REQUIRED)
find_package(OpenCV REQUIRED)

if(NOT Torch_FOUND)
    message(FATAL_ERROR "Pytorch Not Found!")
endif(NOT Torch_FOUND)

message(STATUS "Pytorch status:")
message(STATUS "    libraries: ${TORCH_LIBRARIES}")

message(STATUS "OpenCV library status:")
message(STATUS "    version: ${OpenCV_VERSION}")
message(STATUS "    libraries: ${OpenCV_LIBS}")
message(STATUS "    include path: ${OpenCV_INCLUDE_DIRS}")


add_executable(test main.cpp)
target_link_libraries(test ${TORCH_LIBRARIES} ${OpenCV_LIBS})
set_property(TARGET test PROPERTY CXX_STANDARD 11)

其中“test”是项目名称,CMAKE_PREFIX_PATH 要根据自己下载libtorch的地址进行更改。

cmake编译所需目录结构

新建一个文件夹,将CmakeLists.txt放入其中,并新建其他文件,目录结构如下:
在这里插入图片描述
build是一个空的文件夹,编译好的文件都会放在里面,main.cpp就是工程的主函数。

cmake编译

在编译之前需要在环境变量中添加OpenCV_DIR这个变量,值需要按自己的地址更改。
在这里插入图片描述
如果不进行这种更改,会出现not providing “*.cmake” in CMAKE_MODULE_PATH类的错误。

打开命令行界面,进入build文件夹。
编译命令如下:

cmake -DCMAKE_PREFIX_PATH=G:\Program Files\opencv-4.0.0-vc14_vc15\build\x64\vc15\lib;G:\Program Files\libtorch-win-shared-with-deps-latest\libtorch -DCMAKE_BUILD_TYPE=Release -G"Visual Studio 15 Win64" ..

根据个人环境的不同做适当修改,DCMAKE_PREFIX_PATH改成自己的opencv路径,-G后面的内容也需要更改,这两个都是根据不同vs版本更改,本人环境是vs2017,如果是2015需要将opencv路径中的vc15改成vc14,-G后面的内容改成"Visual Studio 14 Win64" 。分号后是libtorch的路径,也需要修改,编译方式是release

编译完成后的文件夹内容如下:
在这里插入图片描述
打开test.vcxproj,进入工程:
在这里插入图片描述
需要将该test这个项目设为启动项(右键test可以设置)。

如果编译成功后,运行.cpp显示程序无法启动ALL_BUILD 拒绝访问,则将ALL_BUILD和ZERO_CHECK右键卸载项目。

如果报错找不到dll文件,则将libtorch\lib文件夹中相应的dll文件复制到项目文件夹下\build\Release中即可。

用vs运行.cpp时要讲解决方案配置改为Release x64的方式。

参考

1.https://zhuanlan.zhihu.com/p/55292836
2.https://blog.csdn.net/jacke121/article/details/88708680
3.https://www.douban.com/note/511006818/

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值