[eigen] Eigen2 to Eigen3 Migration Path

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


As an introduction I’m the developer who maintains the ROS wrapper of Eigen.   As we are approaching our next release we have quite a few developers who want Eigen3 to be integrated into the upcoming release.  However I have a problem in that several of our core libraries use Eigen2 and many packages built on top of them use Eigen2 as well.  Because Eigen3 and Eigen2 are API breaking I would like to be able to install them side by side so as to provide a period where developers can transition from Eigen2 to Eigen3.  We have found a temporary way to do this which involves patching all namespaces, include guards, and macros inside Eigen3 such that none of them collide with Eigen2.  However doing this is a problem for it means that our installation of Eigen3 is not the same as the  official released version, and any library written against the released version is not compatible with our mangled version.  

We’d really like to be able to support both Eigen2 and Eigen3 to allow a transition period for existing software using Eigen2.  Has anyone thought about how to deal with this migration and have a suggestion about how to proceed?  


BTW for scale I have several thousand lines of code using Eigen2 by name in our indexed repositories.  And I know that there are many projects building on top of our software which use our core libraries and consequently I expect are also using Eigen2.  Also we rely on external libraries which use Eigen2 natively such as kdl and opencv. 

Tully Foote
Systems Engineer
Willow Garage, Inc.
(650) 475-2827

Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/