(1)单一文件
即将源文件和CMakeLists.txt放在同一文件夹下,那么:
cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
project(test1)
set(Torch_DIR "/your/path/libtorch/share/cmake/Torch")
find_package(Torch REQUIRED)
add_executable(test1 test1.cpp)
target_link_libraries(test1 "${TORCH_LIBRARIES}")
set_property(TARGET test1 PROPERTY CXX_STANDARD 14)
此处使用的是Pre-cxx11 ABI
(2)分文件编写项目
文件结构如下:
.
├── CMakeLists.txt
├── include
│ └── test.h
├── src
│ └── test.cpp
└── test_m.cpp
编写CMakeList.txt
cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
project(test1)
set(Torch_DIR "/your/path/libtorch/share/cmake/Torch")
find_package(Torch REQUIRED)
find_package(OpenCV REQUIRED)
include_directories(
${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/include
)
add_library(${PROJECT_NAME} SHARED
src/test.cpp
include/t

文章描述了一个在使用CMake构建包含Torch库的项目时遇到的问题。当项目结构分为多个文件并设置为使用Pre-cxx11ABI的Torch包时,编译过程中出现错误。作者尝试添加头文件路径并调整CMake设置,但仍然收到链接错误。问题最终通过切换到cxx11ABI的Torch包得到解决。
最低0.47元/天 解锁文章
4296

被折叠的 条评论
为什么被折叠?



