Currently, running the LAPACK test suite (enabled by flag EIGEN_ENABLE_LAPACK_TESTS=ON) does not work out-of-the-box. It is automatically downloaded but not automatically compiled. Furthermore, after it is downloaded (to the source dir), the test-script tries to execute it independently of the flag. And last, if one tries to build the required executables manually, some of them generate linker errors, e.g.: ~/eigen-build-dir$ make xeigtstd [ 88%] Built target eigen_lapack_static [ 90%] Built target eigen_blas_static [ 94%] Built target tmglib Linking CXX executable xeigtstd ../../libeigen_lapack_static.a(dgesvj.f.o): In function `dgesvj_': dgesvj.f:(.text+0x16c6): undefined reference to `drotm_' dgesvj.f:(.text+0x2381): undefined reference to `drotm_' dgesvj.f:(.text+0x3592): undefined reference to `drotm_' dgesvj.f:(.text+0x4222): undefined reference to `drotm_' dgesvj.f:(.text+0x4518): undefined reference to `drotm_' ../../libeigen_lapack_static.a(dgesvj.f.o):dgesvj.f:(.text+0x46e3): more undefined references to `drotm_' follow collect2: ld returned 1 exit status make[3]: *** [lapack/testing/EIG/xeigtstd] Error 1 make[2]: *** [lapack/testing/EIG/CMakeFiles/xeigtstd.dir/all] Error 2 make[1]: *** [lapack/testing/EIG/CMakeFiles/xeigtstd.dir/rule] Error 2 make: *** [xeigtstd] Error 2
Fixed by swapping the lapack and blas library order when linking. You'll have to delete the reference and testing folders to enable the download of the updated version. Still have to fix the builtests target issue.
For the record: I confirm that the testsuite runs successfully now, if compiled manually, except for LAPACK_Test_Summary (I think this is a problem of an ill-cased folder name in the python scrypt). Also the MD5 sum in the download script should be fixed (maybe also change the filename?) Of course it would be nice, if the script checks if the file is still valid. I'm not sure what the impact of recalculating the MD5 sum every time is -- maybe it's sufficient just to recalculate it if the CMakeList.txt is newer than the archive.
-- GitLab Migration Automatic Message -- This bug has been migrated to gitlab.com's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.com/libeigen/eigen/issues/765.