olson-sean-k / theon

Abstraction of Euclidean spaces.
MIT License
5 stars 4 forks source link

CI fails due to dynamic linking errors with Intel MKL during doctests. #9

Open olson-sean-k opened 4 years ago

olson-sean-k commented 4 years ago

See failures in this CI run. It looks like doctests are failing on the beta toolchain, because the Intel MKL dynamic library cannot be found. Interestingly, no such error occurs when running libtests. MKL is only used on Linux, so that's the only OS on which this failure occurs.

I first encountered this in Plexus' CI. It's not yet clear to me what the root cause is. In that repository, I tried various CI configurations and have found that the beta toolchain seems to be the most important variable. Using different versions of Ubuntu didn't avoid this error, and I was unable to install additional MKL packages in the workflow (and I doubt that is necessary).

olson-sean-k commented 4 years ago

Rerunning CI against 598a51c today did not exhibit the build failures described above, but instead successfully built and failed the lapack::tests::determined_svd_ev_plane_e3 test. Naturally, I took a look at the test to understand the failure and it looks like the test itself is broken!

The points used to construct the Plane in that test are collinear and therefore non-determined! This could explain why "the output on different OSes differs" from #1...

olson-sean-k commented 4 years ago

Looks like an upstream issue is tracking this problem and there's a planned fix that involves statically linking to Intel MKL.