-
Notifications
You must be signed in to change notification settings - Fork 11
Attempt To Fix Compilation Issue with GTSAM Tag 4.3a0
#29
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
Attempt To Fix Compilation Issue with GTSAM Tag 4.3a0
#29
Conversation
…CEPT_ASSERTs to static_asserts and 2) Adding AdjointMap to `DynmicLieGroupTraits`
…quals between different `Eigen` dimensions cannot happen.
|
Yeah lots of things are going to break here because GTSAM has changed massively with breaking updates made over the last few years and no one has really looked at gpmp2 and kept up with it. The changes are not bad but they're a bit of a bandaid fix without adopting the new paradigms and patterns in GTSAM. We went through this exercise in AstroSLAM and GTDynamics so probably need to do the same here. |
I suspected there might be deeper issues at play when I saw memory allocation issues with Also I can try and implement the steps you recommend if you point me in the right direction. |
|
It's more likely the boost compatibility which is causing the segfaults and not something in core Eigen. Eigen has been incredibly robust and unless you're compiling against a different version compared to the GTSAM one, I think we can eliminate that in the RCA. |
|
I spent time last night trying to compile gpmp2. It's breaking all on Boost stuff, so I'll keep fixing stuff. |
|
This branch is able to compile everything as long as you remember to add the |
Wait so gpmp2 compiles as long we turn off deprecated features? And do the tests also run/pass? I only use the new GTSAM features, so a CI step that enables deprecated features could be good to have. |
|
I am able to build GPMP2 but no tests are failing for me. Can you please provide details on the error messages for the tests? |
I will get these error messages when I get a chance this weekend.... But you're saying on your build that all tests C++, Python, and Matlab are passing for you with GPMP2? Are you using this branch then? |
Also |
Yes. I am using the main branch with some small fixes around Boost compatibility. |
Are those |
Running the following command: make clean && make -j10 check > check.log 2>&1I generate this check.log. In the check.log the following 76% tests passed, 9 tests failed out of 37
Total Test time (real) = 3.20 sec
The following tests FAILED:
4 - testGaussianProcessInterpolatorLinear (Failed)
5 - testGaussianProcessInterpolatorPose2 (Failed)
6 - testGaussianProcessInterpolatorPose2Vector (Failed)
7 - testGaussianProcessInterpolatorPose3 (Failed)
11 - testGaussianProcessPriorPose3 (Subprocess aborted)
20 - testMobileBaseUtils (Subprocess aborted)
22 - testPose2Mobile2Arms (Subprocess aborted)
25 - testPose2MobileVetLin2Arms (Subprocess aborted)
26 - testPose2MobileVetLinArm (Subprocess aborted) |
Yes, because I haven't pushed anything here. |
Do you plan to merge onto this branch? Or will you have me review the other branch to close #28 and then kill this branch? |
|
Some of the fixes here are not the right thing. You shouldn't be needing to replace the static asserts for example. |
You're right. So I've switched to your 'build-fix' branch |
|
I just merged #31 - does that affect what happens here? |
Purpose
This PR fixes compilation issues with the current development build of GTSAM (I believe
4.3a0correct me if I am wrong @dellaert) and attempts to close issue #28.Steps To Verify
GTSAMdevelopGPMP2Pythonunit testsMatlabunit tests (I don't ownMatlab@dellaert can you have someone verify?)Build Configuration
GTSAMDebugwith memory leak /GDBmemory sanitizerGPMP2DebugCurrent Problem
The build instructions now result in the following:
Specifically, most test fail due to segfaults like
testGaussianProcessInterpolatorLinear:Any help from current gtsam contributors (@dellaert) would be appreciated, thank you.