eigen outputs tons of warning after gcc 4.8 upgrade [closed]
Hi all, I have Ubuntu 12.04 + ROS Hydro. I was tired to use the old 4.6.3 GCC so I updated to 4.8 using this guide.
After that when I compile the same nodes that worked before I have these warnings and much more problems with catkin_make
I also did it because I got lots of problems with the -march=native gcc options and I hoped to solve it with the new GCC.
Anyone can help me with this?
In file included from /usr/include/eigen3/Eigen/Core:277:0,
from /usr/include/eigen3/Eigen/Dense:1,
from /home/mcamurri/hyq-ws/src/hyq_slam/src/PoseRefinerNode.h:10,
from /home/mcamurri/hyq-ws/src/hyq_slam/src/PoseRefinerNode.cpp:1:
/usr/include/eigen3/Eigen/src/Core/DenseBase.h: In instantiation of ‘class Eigen::DenseBase<Eigen::Matrix<float, 4, 1> >’:
/usr/include/eigen3/Eigen/src/Core/MatrixBase.h:61:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<float, 4, 1> >’
/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h:65:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<float, 4, 1> >’
/usr/include/eigen3/Eigen/src/Core/Matrix.h:140:7: required from ‘class Eigen::Matrix<float, 4, 1>’
/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h:287:16: required from ‘class Eigen::Quaternion<float>’
/usr/include/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h:35:3: required from here
/usr/include/eigen3/Eigen/src/Core/DenseBase.h:172:59: warning: enumeral mismatch in conditional expression: ‘Eigen::internal::size_at_compile_time<4, 1>::<anonymous enum>’ vs ‘Eigen::internal::traits<Eigen::Matrix<float, 4, 1> >::<anonymous enum>’ [-Wenum-compare]
InnerSizeAtCompileTime = int(IsVectorAtCompileTime) ? SizeAtCompileTime
^
/usr/include/eigen3/Eigen/src/Core/DenseBase.h: In instantiation of ‘class Eigen::DenseBase<Eigen::Matrix<double, 4, 1> >’:
/usr/include/eigen3/Eigen/src/Core/MatrixBase.h:61:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<double, 4, 1> >’
/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h:65:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<double, 4, 1> >’
/usr/include/eigen3/Eigen/src/Core/Matrix.h:140:7: required from ‘class Eigen::Matrix<double, 4, 1>’
/usr/include/eigen3/Eigen/src/Geometry/Quaternion.h:287:16: required from ‘class Eigen::Quaternion<double>’
/usr/include/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h:76:3: required from here
/usr/include/eigen3/Eigen/src/Core/DenseBase.h:172:59: warning: enumeral mismatch in conditional expression: ‘Eigen::internal::size_at_compile_time<4, 1>::<anonymous enum>’ vs ‘Eigen::internal::traits<Eigen::Matrix<double, 4, 1> >::<anonymous enum>’ [-Wenum-compare]
/usr/include/eigen3/Eigen/src/Core/DenseBase.h: In instantiation of ‘class Eigen::DenseBase<Eigen::Matrix<float, -1, 1> >’:
/usr/include/eigen3/Eigen/src/Core/MatrixBase.h:61:34: required from ‘class Eigen::MatrixBase<Eigen::Matrix<float, -1, 1> >’
/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h:65:7: required from ‘class Eigen::PlainObjectBase<Eigen::Matrix<float, -1, 1> >’
/usr/include/eigen3/Eigen/src/Core/Matrix.h:140:7: required from ‘class Eigen::Matrix<float, -1, 1>’
/usr/include/pcl-1.7/pcl/point_cloud.h:90:69: required from here
/usr/include/eigen3 ...
Eigen is 3.0.5 btw