vs cmake项目远程连接Linux时IntelliSense找不到include文件(红线)

使用visual studio跨平台远程调试cmake项目时,使用#include "包"时,有时候会出现编译通过但是自动补全不管用的情况,引用的头文件和函数都是红线,提示找不到库文件。
这种情况主要是因为 IntelliSense无法在远程映射的本地目录(缓存目录,不是当前项目中的第三方库include文件夹下)找到需要导入的包,需要手动更新一下:

  1. 打开 CMakeSettings.json-显示高级设置-在要复制到本地的远程包含目录中添加远程的include目录,以英文分号分隔。例如/home/my/.vs/project/83725516-acc3-432***/src/thirdparty/libtorch/include/,然后保存。
    修改CMakeSettings.json

2.打开vs 工具-选项-跨平台-链接管理器-远程标头IntelliSense管理器,点击更新-确定。


更新IntelliSense

3.在CMakeLists.txtinclude_directories(手动引用)或者target_link_libraries(第三方cmake自动引用),保存就可以正常显示IntelliSense的智能提示了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。