In this simple example:

#include <vnl/vnl_double_2x2.h>
#include <vnl/algo/vnl_real_eigensystem.h>

void TestEigenValuesShort();

int main()
{
    TestEigenValuesShort();
    return 0;
}

void TestEigenValuesShort()
{
    //create a matrix
    vnl_double_2x2 A;
    A(0,0) = 13;
    A(0,1) = 5;
    A(1,0) = 2;
    A(1,1) = 4;   
   
    vnl_real_eigensystem Eigs(A);
}

If I link to only vnl, I get this linking error:
Eigen.cpp:(.text+0x146): undefined reference to `vnl_real_eigensystem::vnl_real_eigensystem(vnl_matrix<double> const&)'

If I link to vnl and rrel, it works fine. This seems like a pretty bad dependency (a core lib depends on a contrib lib) - anyone know how to remove it?

Thanks,

David