【发布时间】:2019-06-29 18:02:06
【问题描述】:
我正在 Visual Studio 2017 中构建一个解决方案,我们在 WSL 上针对 ARM64 目标进行交叉编译。
我已经设置了所有的包含路径,并且编译似乎适用于这个特定的文件。有问题的标头位于 WSL 文件系统的 W:\ 驱动器上
在文件顶部的#include 行,我可以单击有问题的标题 () 并右键单击以打开文档。这将打开正确的标题,我的定义在这个新打开的文档中。 Intellisense 似乎在此文件上无法正常工作,因为似乎没有正确突出显示任何枚举或定义。
但是,如果我要使用 .c 文件中的定义并尝试转到该定义,我会得到“无法找到符号 'V4L2_PIX_FMT_HEVC' 的定义”
将有问题的标头移动到 C:\ 驱动器并将包含路径更改为相应的新路径时,Intellisense 似乎可以识别定义并且“转到定义”工作正常
#include <linux/videodev2.h> //Open document works
#include <linux/v4l2-controls.h> //Open document works
...
case UDP_VIDEO_PROTOCOL_MPEG2:
codec = V4L2_PIX_FMT_MPEG2; //Go to definition does not work
break;
case UDP_VIDEO_PROTOCOL_H265:
codec = V4L2_PIX_FMT_HEVC; //Go to definition does not work
【问题讨论】:
标签: c++ visual-studio include intellisense windows-subsystem-for-linux