c++ - 读取文件时cmake设置路径

标签 c++ makefile path cmake g++

我的文件夹结构是

├── build
│   ├── ..
│   └── Makefile
├── CMakeLists.txt
├── main.cpp
├── test.hpp
└── yuefei3.jpg

在主文件中,我使用相对路径读取图像:

 cv::Mat img = cv::imread("./yuefei3.jpg");

这是我的 CMakeLists.txt:

cmake_minimum_required(VERSION 2.6) 
project(main) 

find_package(OpenCV REQUIRED) 
add_executable(main main.cpp) 

target_link_libraries(main ${OpenCV_LIBS})    

但是,由于可执行文件是从build执行的,所以无法读取相对路径下的图片。

如何设置相对路径以便可执行文件可以读取图像? (我不想用绝对路径)

最佳答案

我以相反的方式解决这个问题,方法是将运行时需要的工件复制到构建目录中。也许这也是您的选择。

关于c++ - 读取文件时cmake设置路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45135493/

相关文章:

Javadoc 多行声明语法?

c++ - C++ 教程上的机器语言指令

c++ - std::sort() 中使用了哪种类型的排序?

c++ - 字符串到整数的精确哈希函数

c++ - 检查重叠时虚幻编辑器崩溃

c++ - makefile 中的 qt gui 项目错误

c++ - Make/Cmake 子目录链接到外部库失败

windows - MSYS/Cygwin 中的 "make clean"问题

python - 命令提示符中无法识别点斜杠 - 尝试安装 Python 模块

java - 如何在Java中组合路径?