最近在vscode写一个项目,进行编译测试的时候发现死活找不到头文件,就离谱,CMakeLists.txt
里的include_directories
所有头文件包含路径写的明明白白清清楚楚,就是找不到!就离谱。查了好长时间找到了解决办法:
修改CMakeLists.txt
里的include_directories
,修改前后请看下文:
修改前:
# 配置头文件的搜索路径
include_directories(${PROJECT_SOURCE_DIR}/include)
include_directories(${PROJECT_SOURCE_DIR}/include/server)
include_directories(${PROJECT_SOURSE_DIR}/thirdparty)
修改后:
# 配置头文件的搜索路径
include_directories(/home/xl22/桌面/chat/include)
include_directories(/home/xl22/桌面/chat/include/server)
include_directories(/home/xl22/桌面/chat/thirdparty)
从结果来看是不能用相对路径${PROJECT_SOURCE_DIR}
,就很奇怪,这不是CMake的内置变量吗???为什么不能用?
求看到的大佬帮忙解决下我的疑惑
本文参考自Stack Overflow中别人提出的相同问题,原文链接:
https://stackoverflow.com/questions/70509714/include-errors-detected-and-cannot-open-source-file