0

我正在尝试使用 libtorch 库设置一个简单的 C++ 代码示例。我按照 Pytorch 教程网站上的描述成功构建了项目。现在我将 example-app 构建文件夹定义为起点,并尝试在调试模式下运行它。我收到一条错误消息,指出无法找到 torch.dll,但它已在外部依赖项文件夹中列出。

我重新安装了 libtorch 库。没有成功,我以管理员身份运行 VS。没有成功,我重建了项目。没有成功,我将 libtorch 设置为环境变量。没有社交

C++ Code: 

#include <torch/torch.h>
#include <iostream>

int main() {
  torch::Tensor tensor = torch::rand({2, 3});
  std::cout << tensor << std::endl;
}

CMakeLists.txt:

cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
project(example-app)
find_package(Torch REQUIRED)

add_executable(example-app app.cpp)
target_link_libraries(example-app "${TORCH_LIBRARIES}")
set_property(TARGET example-app PROPERTY CXX_STANDARD 11)

我的错误信息告诉我(我把它翻译成英文):

无法继续执行代码,因为无法找到torch.dll。重新安装程序可能会解决此问题

4

2 回答 2

1

您必须将依赖的 *dll 复制到可执行文件旁边,或者必须将 libtorch/bin 添加到您的路径中。

if (MSVC)
    file(GLOB TORCH_DLLS "${TORCH_INSTALL_PREFIX}/lib/*.dll")
    add_custom_command(TARGET example-app
                 POST_BUILD
                 COMMAND ${CMAKE_COMMAND} -E copy_if_different
                 ${TORCH_DLLS}
                 $<TARGET_FILE_DIR:example-app>)
endif (MSVC)

这是我针对您的情况的解决方案

于 2019-10-05T23:22:45.967 回答
0

libtorch/lib添加到 PATH 对我有用

于 2021-08-25T08:44:11.667 回答