Arm64 VSCode C/C++ IntelliSense 无法识别Eigen的MatrixXf VectorXf等成员

描述

平台

  • 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平台上的适配问题

解决步骤

  1. 在.vscode/中添加一个头文件
#if __INTELLISENSE__
#undef __ARM_NEON
#undef __ARM_NEON__
#endif

在这里插入图片描述

  1. 在.vscode/c_cpp_properties.json配置项中添加forceInclude
"forcedInclude": [
    "${workspaceFolder}/.vscode/eigen_fix.h"
],

在这里插入图片描述

  1. 好了

在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值