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

Problem compiling with new Eigen 3.3 version #207

Open
dcazzato opened this issue Nov 29, 2016 · 2 comments
Open

Problem compiling with new Eigen 3.3 version #207

dcazzato opened this issue Nov 29, 2016 · 2 comments

Comments

@dcazzato
Copy link

Hello, I have been able to compile the code, but since it costed me several hours struggling and reading other issues in order to detect the problem, I report the following solution in order to understand if it depended from an error in my configuration, or if it a possible bug that could be useful for all of you.

In a few words, I installed the library on a Ubuntu 16.04 LTS, OpenCV 2.4.13 and the latest Eigen 3.3. Well, with this configuration, it is impossible to compile the code, with an error at compile time about the unknown usleep() function. I modified source code by adding #include<unistd.h> in your files LocalMapping, LoopClosing, System, Tracking and Viewer. Although with this trick it compiles, I still found a new error before completing the procedure:

/usr/include/eigen3/Eigen/src/Core/util/StaticAssert.h:32:40: error: static assertion failed: YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY

At this point, the only solution that worked in order to correctly compile the code (even without any needs for modifying source code adding any pre-processor directive as I did before!), is to switch back Eigen library to the version 3.2.10 (stable).

Considering the following open issues:

#202
#205

I'd hazard there is an incompatibility problem with the new version of the Eigen library.

Hope that my contribution will help (in case I am wrong, please let me know why, in order repeat the installation procedure with latest version of Eigen 3.3 instead the 3.2, also to avoid raising new possible errors at execution time).

Regards

@bombrake
Copy link

I faced the same issue and had to use Eigen 3.2.10 as well for a successful compile. Thanks a lot for reporting it!

@stihuangyuan
Copy link

thanks for your share, i have met the same problem, it works.

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

3 participants