Tests with complicated validators (and non-QMTests) broken with sanitizer builds
For example, FileSummaryRecord.write
fails with
==3138==ASan runtime does not come first in initial library list; you should either link runtime to your application or manually preload it with LD_PRELOAD.
The problem is that LD_PRELOAD
is not set. The toolchain only sets PRELOAD_SANITIZER_LIB
(see here), which is then transferred to LD_PRELOAD by either gaudirun.py
or our QMTest runner. The QMTest runner, however, runs the validator in the same process (see also gaudi/Gaudi#222), which means LD_PRELOAD is not set. Then the validator fails when it tries to load libraries compiled as part of the stack.
A similar problem must happen for pytest tests that load libraries.
Why don't we export LD_PRELOAD
already in the toolchain?