rubengooj / pl-slam

This code contains an algorithm to compute stereo visual SLAM by using both point and line segment features.
GNU General Public License v3.0
732 stars 242 forks source link

Eigen version #2

Open Liminglyq opened 7 years ago

Liminglyq commented 7 years ago

can you tell the Eigen version you used? different Eigen version cause different compiling problems

ydt9000511 commented 6 years ago

I get the same question. and I can`t successfully execute ./build.sh due to the Eigen3 problems. Have you successfully found out the correct Eigen version? @Liminglyq Many thanks for your help!

vardhan26 commented 6 years ago

I am having a similar problem: In file included from /usr/local/include/eigen3/Eigen/CholmodSupport:39:0, from /home/hotshot/pl-slam/include/mapHandler.h:27, from /home/hotshot/pl-slam/src/mapHandler.cpp:22: /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h: In function ‘cholmod_sparse Eigen::viewAsCholmod(Eigen::SparseMatrix<_Scalar, _Options, _Index>&)’: /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h:81:37: error: ‘UF_long’ was not declared in this scope else if (internal::is_same<_Index,UF_long>::value) ^ /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h:81:44: error: template argument 2 is invalid else if (internal::is_same<_Index,UF_long>::value) ^ In file included from /usr/local/include/eigen3/Eigen/Sparse:19:0, from /home/hotshot/pl-slam/include/mapHandler.h:26, from /home/hotshot/pl-slam/include/slamScene.h:43, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/local/include/eigen3/Eigen/SparseCore:32:8: error: redefinition of ‘struct Eigen::Sparse’ struct Sparse {}; ^ In file included from /usr/include/eigen3/Eigen/Core:294:0, from /usr/include/eigen3/Eigen/Dense:1, from /usr/include/mrpt/base/include/mrpt/utils/types_math.h:31, from /usr/include/mrpt/base/include/mrpt/math/CMatrixFixedNumeric.h:14, from /usr/include/mrpt/base/include/mrpt/poses/CPoseOrPoint.h:12, from /usr/include/mrpt/base/include/mrpt/poses/CPose.h:12, from /usr/include/mrpt/base/include/mrpt/poses/CPose3D.h:12, from /usr/include/mrpt/opengl/include/mrpt/opengl/CRenderizable.h:15, from /usr/include/mrpt/opengl/include/mrpt/opengl.h:15, from /home/hotshot/pl-slam/include/slamScene.h:25, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/include/eigen3/Eigen/src/Core/util/Constants.h:493:8: error: previous definition of ‘struct Eigen::Sparse’ struct Sparse {}; ^ In file included from /usr/local/include/eigen3/Eigen/SparseCore:40:0, from /usr/local/include/eigen3/Eigen/Sparse:19, from /home/hotshot/pl-slam/include/mapHandler.h:26, from /home/hotshot/pl-slam/include/slamScene.h:43, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:20: error: expected nested-name-specifier before ‘nested’ typedef typename nested::type MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:20: error: expected ‘;’ at end of member declaration /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:26: error: expected unqualified-id before ‘<’ token typedef typename nested::type MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:65:37: error: ‘MatrixTypeNested’ was not declared in this scope typedef typename remove_reference::type _MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:65:53: error: template argument 1 is invalid typedef typename remove_reference::type _MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:78:21: error: ‘_MatrixTypeNested’ is not a class, namespace, or enumeration CoeffReadCost = _MatrixTypeNested::CoeffReadCost*10 ^

wangbing8895 commented 6 years ago

I also met this problem!can you tell us your Eigen version? @rubengooj

ydt9000511 commented 6 years ago

I am using Eigen 3.3.4 the most recent release of Eigen library

Have you solved it yet?


From: vardhan26 notifications@github.com Sent: 04 December 2017 10:11:59 To: rubengooj/pl-slam Cc: Yan, Dingtian; Comment Subject: Re: [rubengooj/pl-slam] Eigen version (#2)

I am having a similar problem: In file included from /usr/local/include/eigen3/Eigen/CholmodSupport:39:0, from /home/hotshot/pl-slam/include/mapHandler.h:27, from /home/hotshot/pl-slam/src/mapHandler.cpp:22: /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h: In function ‘cholmod_sparse Eigen::viewAsCholmod(Eigen::SparseMatrix<_Scalar, _Options, _Index>&)’: /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h:81:37: error: ‘UF_long’ was not declared in this scope else if (internal::is_same<_Index,UF_long>::value) ^ /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h:81:44: error: template argument 2 is invalid else if (internal::is_same<_Index,UF_long>::value) ^ In file included from /usr/local/include/eigen3/Eigen/Sparse:19:0, from /home/hotshot/pl-slam/include/mapHandler.h:26, from /home/hotshot/pl-slam/include/slamScene.h:43, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/local/include/eigen3/Eigen/SparseCore:32:8: error: redefinition of ‘struct Eigen::Sparse’ struct Sparse {}; ^ In file included from /usr/include/eigen3/Eigen/Core:294:0, from /usr/include/eigen3/Eigen/Dense:1, from /usr/include/mrpt/base/include/mrpt/utils/types_math.h:31, from /usr/include/mrpt/base/include/mrpt/math/CMatrixFixedNumeric.h:14, from /usr/include/mrpt/base/include/mrpt/poses/CPoseOrPoint.h:12, from /usr/include/mrpt/base/include/mrpt/poses/CPose.h:12, from /usr/include/mrpt/base/include/mrpt/poses/CPose3D.h:12, from /usr/include/mrpt/opengl/include/mrpt/opengl/CRenderizable.h:15, from /usr/include/mrpt/opengl/include/mrpt/opengl.h:15, from /home/hotshot/pl-slam/include/slamScene.h:25, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/include/eigen3/Eigen/src/Core/util/Constants.h:493:8: error: previous definition of ‘struct Eigen::Sparse’ struct Sparse {}; ^ In file included from /usr/local/include/eigen3/Eigen/SparseCore:40:0, from /usr/local/include/eigen3/Eigen/Sparse:19, from /home/hotshot/pl-slam/include/mapHandler.h:26, from /home/hotshot/pl-slam/include/slamScene.h:43, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:20: error: expected nested-name-specifier before ‘nested’ typedef typename nested::type MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:20: error: expected ‘;’ at end of member declaration /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:26: error: expected unqualified-id before ‘<’ token typedef typename nested::type MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:65:37: error: ‘MatrixTypeNested’ was not declared in this scope typedef typename remove_reference::type _MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:65:53: error: template argument 1 is invalid typedef typename remove_reference::type _MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:78:21: error: ‘_MatrixTypeNested’ is not a class, namespace, or enumeration CoeffReadCost = _MatrixTypeNested::CoeffReadCost*10 ^

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/rubengooj/pl-slam/issues/2#issuecomment-348917500, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AdB4Z8uXy4CLiT6yWgxQBwo2wBSpN2KJks5s88VugaJpZM4O9AQP.

ydt9000511 commented 6 years ago

I am using Eigen 3.3.4 the most recent public release

Have you solved it yet?


From: wangbing8895 notifications@github.com Sent: 06 December 2017 03:30:05 To: rubengooj/pl-slam Cc: Yan, Dingtian; Comment Subject: Re: [rubengooj/pl-slam] Eigen version (#2)

I also met this problem!can you tell us your Eigen version? @rubengoojhttps://github.com/rubengooj

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/rubengooj/pl-slam/issues/2#issuecomment-349521165, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AdB4Z5RyG2WUSDBEb6kE9XvClKy_dHUlks5s9go9gaJpZM4O9AQP.

ydt9000511 commented 6 years ago

From: Yan, Dingtian Sent: 17 November 2017 11:49 To: rubengooj/pl-slam Subject: Re: [rubengooj/pl-slam] 'std::logic_error' and 'YAML::BadFile' (#3)

This problem is caused by Eigen

Can you speak/read Chinese? If you can, I recommend you to read this webpage

http://blog.csdn.net/wojiushixiangshi/article/details/78356271

and It solves all my problems.

Could you contact me when you successfully running this program?

Warm Regard

Dingtian


From: vardhan26 notifications@github.com Sent: 04 December 2017 10:11:59 To: rubengooj/pl-slam Cc: Yan, Dingtian; Comment Subject: Re: [rubengooj/pl-slam] Eigen version (#2)

I am having a similar problem: In file included from /usr/local/include/eigen3/Eigen/CholmodSupport:39:0, from /home/hotshot/pl-slam/include/mapHandler.h:27, from /home/hotshot/pl-slam/src/mapHandler.cpp:22: /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h: In function ‘cholmod_sparse Eigen::viewAsCholmod(Eigen::SparseMatrix<_Scalar, _Options, _Index>&)’: /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h:81:37: error: ‘UF_long’ was not declared in this scope else if (internal::is_same<_Index,UF_long>::value) ^ /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h:81:44: error: template argument 2 is invalid else if (internal::is_same<_Index,UF_long>::value) ^ In file included from /usr/local/include/eigen3/Eigen/Sparse:19:0, from /home/hotshot/pl-slam/include/mapHandler.h:26, from /home/hotshot/pl-slam/include/slamScene.h:43, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/local/include/eigen3/Eigen/SparseCore:32:8: error: redefinition of ‘struct Eigen::Sparse’ struct Sparse {}; ^ In file included from /usr/include/eigen3/Eigen/Core:294:0, from /usr/include/eigen3/Eigen/Dense:1, from /usr/include/mrpt/base/include/mrpt/utils/types_math.h:31, from /usr/include/mrpt/base/include/mrpt/math/CMatrixFixedNumeric.h:14, from /usr/include/mrpt/base/include/mrpt/poses/CPoseOrPoint.h:12, from /usr/include/mrpt/base/include/mrpt/poses/CPose.h:12, from /usr/include/mrpt/base/include/mrpt/poses/CPose3D.h:12, from /usr/include/mrpt/opengl/include/mrpt/opengl/CRenderizable.h:15, from /usr/include/mrpt/opengl/include/mrpt/opengl.h:15, from /home/hotshot/pl-slam/include/slamScene.h:25, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/include/eigen3/Eigen/src/Core/util/Constants.h:493:8: error: previous definition of ‘struct Eigen::Sparse’ struct Sparse {}; ^ In file included from /usr/local/include/eigen3/Eigen/SparseCore:40:0, from /usr/local/include/eigen3/Eigen/Sparse:19, from /home/hotshot/pl-slam/include/mapHandler.h:26, from /home/hotshot/pl-slam/include/slamScene.h:43, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:20: error: expected nested-name-specifier before ‘nested’ typedef typename nested::type MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:20: error: expected ‘;’ at end of member declaration /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:26: error: expected unqualified-id before ‘<’ token typedef typename nested::type MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:65:37: error: ‘MatrixTypeNested’ was not declared in this scope typedef typename remove_reference::type _MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:65:53: error: template argument 1 is invalid typedef typename remove_reference::type _MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:78:21: error: ‘_MatrixTypeNested’ is not a class, namespace, or enumeration CoeffReadCost = _MatrixTypeNested::CoeffReadCost*10 ^

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/rubengooj/pl-slam/issues/2#issuecomment-348917500, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AdB4Z8uXy4CLiT6yWgxQBwo2wBSpN2KJks5s88VugaJpZM4O9AQP.

ydt9000511 commented 6 years ago

From: Yan, Dingtian Sent: 17 November 2017 11:49 To: rubengooj/pl-slam Subject: Re: [rubengooj/pl-slam] 'std::logic_error' and 'YAML::BadFile' (#3)

This problem is caused by Eigen

Can you speak/read Chinese? If you can, I recommend you to read this webpage

http://blog.csdn.net/wojiushixiangshi/article/details/78356271

and It solves all my problems.

Could you contact me when you successfully running this program?

Warm Regard

Dingtian


From: wangbing8895 notifications@github.com Sent: 06 December 2017 03:30:05 To: rubengooj/pl-slam Cc: Yan, Dingtian; Comment Subject: Re: [rubengooj/pl-slam] Eigen version (#2)

I also met this problem!can you tell us your Eigen version? @rubengoojhttps://github.com/rubengooj

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/rubengooj/pl-slam/issues/2#issuecomment-349521165, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AdB4Z5RyG2WUSDBEb6kE9XvClKy_dHUlks5s9go9gaJpZM4O9AQP.

fengchen122959 commented 3 years ago

I am having a similar problem: In file included from /usr/local/include/eigen3/Eigen/CholmodSupport:39:0, from /home/hotshot/pl-slam/include/mapHandler.h:27, from /home/hotshot/pl-slam/src/mapHandler.cpp:22: /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h: In function ‘cholmod_sparse Eigen::viewAsCholmod(Eigen::SparseMatrix<_Scalar, _Options, _Index>&)’: /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h:81:37: error: ‘UF_long’ was not declared in this scope else if (internal::is_same<_Index,UF_long>::value) ^ /usr/local/include/eigen3/Eigen/src/CholmodSupport/CholmodSupport.h:81:44: error: template argument 2 is invalid else if (internal::is_same<_Index,UF_long>::value) ^ In file included from /usr/local/include/eigen3/Eigen/Sparse:19:0, from /home/hotshot/pl-slam/include/mapHandler.h:26, from /home/hotshot/pl-slam/include/slamScene.h:43, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/local/include/eigen3/Eigen/SparseCore:32:8: error: redefinition of ‘struct Eigen::Sparse’ struct Sparse {}; ^ In file included from /usr/include/eigen3/Eigen/Core:294:0, from /usr/include/eigen3/Eigen/Dense:1, from /usr/include/mrpt/base/include/mrpt/utils/types_math.h:31, from /usr/include/mrpt/base/include/mrpt/math/CMatrixFixedNumeric.h:14, from /usr/include/mrpt/base/include/mrpt/poses/CPoseOrPoint.h:12, from /usr/include/mrpt/base/include/mrpt/poses/CPose.h:12, from /usr/include/mrpt/base/include/mrpt/poses/CPose3D.h:12, from /usr/include/mrpt/opengl/include/mrpt/opengl/CRenderizable.h:15, from /usr/include/mrpt/opengl/include/mrpt/opengl.h:15, from /home/hotshot/pl-slam/include/slamScene.h:25, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/include/eigen3/Eigen/src/Core/util/Constants.h:493:8: error: previous definition of ‘struct Eigen::Sparse’ struct Sparse {}; ^ In file included from /usr/local/include/eigen3/Eigen/SparseCore:40:0, from /usr/local/include/eigen3/Eigen/Sparse:19, from /home/hotshot/pl-slam/include/mapHandler.h:26, from /home/hotshot/pl-slam/include/slamScene.h:43, from /home/hotshot/pl-slam/src/slamScene.cpp:22: /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:20: error: expected nested-name-specifier before ‘nested’ typedef typename nested::type MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:20: error: expected ‘;’ at end of member declaration /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:64:26: error: expected unqualified-id before ‘<’ token typedef typename nested::type MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:65:37: error: ‘MatrixTypeNested’ was not declared in this scope typedef typename remove_reference::type _MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:65:53: error: template argument 1 is invalid typedef typename remove_reference::type _MatrixTypeNested; ^ /usr/local/include/eigen3/Eigen/src/SparseCore/SparseMatrix.h:78:21: error: ‘_MatrixTypeNested’ is not a class, namespace, or enumeration CoeffReadCost = _MatrixTypeNested::CoeffReadCost*10 ^

have you solved teh question? I have the same error while make pl-slam ,if you have solve it ,could you reply to me ? thank you

fengchen122959 commented 3 years ago

I get the same question. and I can`t successfully execute ./build.sh due to the Eigen3 problems. Have you successfully found out the correct Eigen version? @Liminglyq Many thanks for your help! 兄弟你解决了么,我也有一样的问题