Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build errors with PaGMO on #99

Closed
aleixpinardell opened this issue Nov 28, 2016 · 4 comments
Closed

Build errors with PaGMO on #99

aleixpinardell opened this issue Nov 28, 2016 · 4 comments

Comments

@aleixpinardell
Copy link
Member

[100%] Building CXX object tudatExampleApplications/libraryExamples/PaGMOEx/CMakeFiles/example_library_pagmo.dir/main.cpp.o
In file included from /Users/aleix/Documents/tudatBundle/tudatExampleApplications/libraryExamples/PaGMOEx/main.cpp:20:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/pagmo.h:30:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithms.h:31:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/base.h:34:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/../population.h:35:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/base.h:45:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/../serialization.h:61:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/Dense:2:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/LU:19:
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/misc/Solve.h:21:15: error: no template named 'solve_retval_base'; did you mean 'image_retval_base'?
struct traits<solve_retval_base<DecompositionType, Rhs> >
              ^
/Users/aleix/Documents/tudatBundle/eigen/Eigen/src/Core/util/ForwardDeclarations.h:141:45: note: 'image_retval_base' declared here
template<typename DecompositionType> struct image_retval_base;
                                            ^
In file included from /Users/aleix/Documents/tudatBundle/tudatExampleApplications/libraryExamples/PaGMOEx/main.cpp:20:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/pagmo.h:30:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithms.h:31:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/base.h:34:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/../population.h:35:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/base.h:45:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/../serialization.h:61:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/Dense:2:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/LU:19:
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/misc/Solve.h:21:15: error: too many template arguments for class template 'image_retval_base'
struct traits<solve_retval_base<DecompositionType, Rhs> >
              ^                                    ~~~~
/Users/aleix/Documents/tudatBundle/eigen/Eigen/src/Core/util/ForwardDeclarations.h:141:45: note: template is declared here
template<typename DecompositionType> struct image_retval_base;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~        ^
In file included from /Users/aleix/Documents/tudatBundle/tudatExampleApplications/libraryExamples/PaGMOEx/main.cpp:20:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/pagmo.h:30:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithms.h:31:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/base.h:34:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/../population.h:35:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/base.h:45:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/../serialization.h:61:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/Dense:2:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/LU:19:
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/misc/Solve.h:51:23: error: unknown type name 'solve_retval'
    static_cast<const solve_retval<DecompositionType,Rhs>*>(this)->evalTo(dst);
                      ^
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/misc/Solve.h:51:35: error: expected '>'
    static_cast<const solve_retval<DecompositionType,Rhs>*>(this)->evalTo(dst);
                                  ^
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/misc/Solve.h:51:16: note: to match this '<'
    static_cast<const solve_retval<DecompositionType,Rhs>*>(this)->evalTo(dst);
               ^
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/misc/Solve.h:51:36: error: unexpected type name 'DecompositionType': expected expression
    static_cast<const solve_retval<DecompositionType,Rhs>*>(this)->evalTo(dst);
                                   ^
In file included from /Users/aleix/Documents/tudatBundle/tudatExampleApplications/libraryExamples/PaGMOEx/main.cpp:20:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/pagmo.h:30:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithms.h:31:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/base.h:34:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/../population.h:35:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/base.h:45:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/../serialization.h:61:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/Dense:2:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/LU:22:
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/FullPivLU.h:213:28: error: no type named 'solve_retval' in namespace 'Eigen::internal'
    inline const internal::solve_retval<FullPivLU, Rhs>
                 ~~~~~~~~~~^
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/FullPivLU.h:213:40: error: expected member name or ';' after declaration specifiers
    inline const internal::solve_retval<FullPivLU, Rhs>
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/FullPivLU.h:362:28: error: no type named 'solve_retval' in namespace 'Eigen::internal'
    inline const internal::solve_retval<FullPivLU,typename MatrixType::IdentityReturnType> inverse() const
                 ~~~~~~~~~~^
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/FullPivLU.h:362:40: error: expected member name or ';' after declaration specifiers
    inline const internal::solve_retval<FullPivLU,typename MatrixType::IdentityReturnType> inverse() const
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/FullPivLU.h:506:70: error: out-of-line definition of 'determinant' does not match any declaration in 'FullPivLU<MatrixType>'
typename internal::traits<MatrixType>::Scalar FullPivLU<MatrixType>::determinant() const
                                                                     ^~~~~~~~~~~
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/FullPivLU.h:517:35: error: out-of-line definition of 'reconstructedMatrix' does not match any declaration in 'FullPivLU<MatrixType>'
MatrixType FullPivLU<MatrixType>::reconstructedMatrix() const
                                  ^~~~~~~~~~~~~~~~~~~
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/FullPivLU.h:666:8: error: explicit specialization of non-template struct 'solve_retval'
struct solve_retval<FullPivLU<_MatrixType>, Rhs>
       ^           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /Users/aleix/Documents/tudatBundle/tudatExampleApplications/libraryExamples/PaGMOEx/main.cpp:20:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/pagmo.h:30:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithms.h:31:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/base.h:34:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/../population.h:35:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/base.h:45:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/../serialization.h:61:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/Dense:2:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/LU:27:
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/Determinant.h:95:30: error: no type named 'nested' in namespace 'Eigen::internal'
  typedef typename internal::nested<Derived,Base::RowsAtCompileTime>::type Nested;
          ~~~~~~~~~~~~~~~~~~~^~~~~~
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/Determinant.h:95:36: error: expected unqualified-id
  typedef typename internal::nested<Derived,Base::RowsAtCompileTime>::type Nested;
                                   ^
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/Determinant.h:96:67: error: use of undeclared identifier 'Nested'
  return internal::determinant_impl<typename internal::remove_all<Nested>::type>::run(derived());
                                                                  ^
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/Determinant.h:96:76: error: no type named 'type' in the global namespace
  return internal::determinant_impl<typename internal::remove_all<Nested>::type>::run(derived());
                                                                         ~~^
In file included from /Users/aleix/Documents/tudatBundle/tudatExampleApplications/libraryExamples/PaGMOEx/main.cpp:20:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/pagmo.h:30:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithms.h:31:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/base.h:34:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/../population.h:35:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/base.h:45:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/../serialization.h:61:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/Dense:2:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/LU:31:
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/arch/Inverse_SSE.h:35:8: error: explicit specialization of non-template struct 'compute_inverse_size4'
struct compute_inverse_size4<Architecture::SSE, float, MatrixType, ResultType>
       ^                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/arch/Inverse_SSE.h:163:30: error: template argument for template type parameter must be a type
struct compute_inverse_size4<Architecture::SSE, double, MatrixType, ResultType>
                             ^~~~~~~~~~~~~~~~~
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/LU/arch/Inverse_SSE.h:34:19: note: template parameter is declared here
template<typename MatrixType, typename ResultType>
                  ^
In file included from /Users/aleix/Documents/tudatBundle/tudatExampleApplications/libraryExamples/PaGMOEx/main.cpp:20:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/pagmo.h:30:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithms.h:31:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/base.h:34:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/algorithm/../population.h:35:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/base.h:45:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/problem/../serialization.h:61:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/Dense:6:
In file included from /Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/Geometry:33:
/Users/aleix/Documents/tudatBundle/pagmo/../pagmo/src/Eigen/src/Geometry/OrthoMethods.h:33:22: error: no type named 'nested' in namespace 'Eigen::internal'
  typename internal::nested<Derived,2>::type lhs(derived());
  ~~~~~~~~~~~~~~~~~~~^~~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[2]: *** [tudatExampleApplications/libraryExamples/PaGMOEx/CMakeFiles/example_library_pagmo.dir/main.cpp.o] Error 1
make[1]: *** [tudatExampleApplications/libraryExamples/PaGMOEx/CMakeFiles/example_library_pagmo.dir/all] Error 2
make: *** [all] Error 2
16:20:04: The process "/usr/bin/make" exited with code 2.
Error while building/deploying project TudatBundle (kit: Desktop)
When executing step "Make"
@DominicDirkx
Copy link
Member

DominicDirkx commented Nov 28, 2016

Is this only a problem with the Tudat example? Does the pagmo main build or does it give a similar error? (Comment out the pagmo example in the cmake list and compile again).

This error does somehow look familiar.... Have you asked around in the student room if anyone else is familiar with this error (perhaps Michael or Julien?)

@DominicDirkx
Copy link
Member

Also (just in case) try removing (make a backup!) the Eigen folder in pagmo (pagmo/src/eigen) and copying the tudatBundle eigen folder in here, maing sure that the pagmo eigen folder structure remains the same.

@aleixpinardell
Copy link
Member Author

Yes, replacing the contents of tudatBundle/pagmo/src/eigen/Eigen with tudatBundle/eigen/Eigen solved the problem. Thanks!

@DominicDirkx
Copy link
Member

Great to hear that fixing this this was so easy! Seems that the pagmo and Tudat eigen are not completely compatible...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants