描述
平台
-
Jetson Xavier NX 8G Arm64
-
Ubuntu 18.04
-
VSCode 1.89.1
SSH远程连接 -
C/C++ Extension v1.20.5
IntelliSense模式 gcc-arm64(legacy)
问题
eigen3内的众多成员不被识别,满屏红色波浪线
命名空间“Eigen”没有成员“Matrix3f”(或“Vector3f”之类的)
tmd密密麻麻的红色下划线,命令行正常编译,但VSCode不能正常代码补全和变量识别,全都在报错。
对比了在x86平台的相同代码,相同SSH远程连接VSCode,并没有问题。
解决方案
讨论
IntelliSense reports incorrect errors when using eigen3 library
C/C++ Extension 的开发大佬说:
应该是在Arm平台上的适配问题
解决步骤
- 在.vscode/中添加一个头文件
#if __INTELLISENSE__
#undef __ARM_NEON
#undef __ARM_NEON__
#endif
- 在.vscode/c_cpp_properties.json配置项中添加forceInclude
"forcedInclude": [
"${workspaceFolder}/.vscode/eigen_fix.h"
],
- 好了