首页 > 其他分享 >eigen3 编译报错

eigen3 编译报错

时间:2024-10-30 17:36:26浏览次数:8  
标签:Eigen 编译 报错 eigen3 template array include size

错误信息:

/usr/include/eigen3/unsupported/Eigen/CXX11/src/util/EmulateArray.h:254:30: error: redeclared with 1 template parameter
  254 | template <typename T> struct array_size;
/usr/include/eigen3/unsupported/Eigen/CXX11/src/util/EmulateArray.h:255:41: error: redefinition of ‘struct Eigen::internal::array_size<const std::array<_Tp, _Nm> >’
  255 | template<class T, std::size_t N> struct array_size<const std::array<T,N> > {
 /usr/include/eigen3/unsupported/Eigen/CXX11/src/util/EmulateArray.h:258:30: error: redeclared with 1 template parameter
  258 | template <typename T> struct array_size;
  /usr/include/eigen3/unsupported/Eigen/CXX11/src/util/EmulateArray.h:259:41: error: redefinition of ‘struct Eigen::internal::array_size<std::array<_Tp, _Nm> >’
  259 | template<class T, std::size_t N> struct array_size<std::array<T,N> > {
  /usr/include/eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h:466:111: error: wrong number of template arguments (6, should be at least 7)
  466 |     internal::gemm_pack_lhs<LhsScalar, Index, typename LhsMapper::SubMapper, mr, Traits::LhsProgress, ColMajor> pack_lhs;

原因: 我装了多个版本的 Eigen 。重复定义。当在代码中使用#include <eigen3/Eigen/Dense>来引用 Eigen,就会在两个路径下找到该文件,于是回报以上的错误。故使用#include <Eigen/Dense>来引用就很保险。
解决办法:
将头文件中的 #include <eigen3/Eigen/Dense> 改为 #include <Eigen/Dense> 便可成功编译!

参考:https://blog.csdn.net/weixin_44401286/article/details/112445309

标签:Eigen,编译,报错,eigen3,template,array,include,size
From: https://www.cnblogs.com/odesey/p/18516245

相关文章

  • Beyond Compare主进程因7zxa.dll报错崩溃,解决Beyond Compare中7zxa.dll文件丢失或损坏
    在使用BeyondCompare这款强大的文件和文件夹比较工具时,用户可能会遇到主进程因7zxa.dll文件报错而崩溃的问题。7zxa.dll是一个动态链接库文件,虽然它原本是为7-Zip压缩软件设计的,但在某些情况下,它可能会与BeyondCompare产生关联并导致错误。本文将详细介绍如何解决BeyondComp......
  • jmeter java.security.NoSuchProviderException: JCE cannot authenticate the provid
    背景:需要用jmeter调用jar包,加解密的,jar包放到extras里,脚本调用发现会报标题的错误尝试:1.修改jdk版本,以为是jdk版本不兼容,从1.8.0-0184升级到1.8.0-034期间还配置了环境变量 结果:依然报错; 2.指定jmeter使用jdk版本在jmeter.bat中加入setJAVA_HOME=D:\ProgramFiles\Jav......
  • 【GiraKoo】C++编译中常用的内置宏
    开源项目:https://girakoo.com/联系方式:[email protected]简介针对不同的平台,很多头文件,函数名称,类型占用空间不一致。为了保证跨平台可编译,经常需要在项目中使用宏进行区分系统宏操作系统可使用的宏Windows32位_WIN32Windows64位_WIN32;_WIN64Linux__linu......
  • 编译opencv 提示opencv_sfm links to target absl::log but not found解决办法
    先说解决办法,安装ceres库版本需要<2ErrorwhileconfiguringCMaketobuildwithcontribmodules在香橙派5上编译opencv+opencv_contrib我是先源码编译的ceres库(2.2版本的,查看include\version.h)在opencv\build目录下生成配置时,提示configdone,generatefailed!并报......
  • 【C语言】预处理(预编译)详解(下)(C语言最终篇)
    文章目录一、#和##1.#运算符2.##运算符二、预处理指令#undef三、条件编译1.单分支条件编译2.多分支条件编译3.判断符号是否被定义4.判断符号是否没有被定义四、头文件的包含1.库头文件的包含2.本地头文件的包含3.嵌套包含头文件的解决方法使用条件编译指令使用预处理......
  • 易优cms系统报错SQLSTATE[42S22]: Column not found: 1054 Unknown column 'groupid'
    .检查数据库表结构确认表结构:首先确认相关表中是否存在 groupid 列。  DESCRIBE表名;将 表名 替换为实际的表名,例如 eyou_member 或 eyou_admin。2.修改查询语句检查查询语句:如果 groupid 列确实不存在,需要修改相关的查询语句。找到引发错误的查询......
  • 易优cms系统报错unserialize(): Error at offset 0 of 1571 bytes_Eyoucms系统报错问
    解决方案清除缓存通过FTP访问服务器。导航至 /data/runtime 目录。删除该目录下的所有文件和文件夹。升级系统登录后台。检查是否有可用的更新。升级到最新版本,以确保已知的问题已被修复。检查代码如果问题仍然存在,可以检查 \corelibrary\think\cache\dri......
  • 连接云虚拟主机中MySQL数据库时出现“Too many connections”报错信息
    在使用云虚拟主机过程中,当尝试连接MySQL数据库时,可能会遇到以下错误信息:  CannotconnecttoMySQLserverError:Toomanyconnections这表示MySQL数据库服务器当前的连接数已经达到了最大限制,无法处理更多的连接请求。可能原因应用程序未及时释放连接:应用程序在......
  • springmvc-servlet.xml和web.xml文件的存放路径是哪里?项目添加到Tomcat上运行后就报错
        用eclipse写了一个简单的web项目,springmvc-servlet.xml文件和web.xml文件都配置好了,运行起来能看见hello的web页面,但是有一堆报错,不知道是什么原因                                     ......
  • 关于Rust使用cross进行交叉编译,openssl报错
    遇到错误详情解决:使用cross交叉编译,确保已经安装好了openssl的相关依赖,但是依然报和openssl有关的错误,此时需要在 Cargo.toml 添加openssl的依赖查看:https://github.com/sfackler/rust-openssl?tab=readme-ov-file1[dependencies]2openssl={version="0.10",feat......