Hi Patrick,
The `./configure', `make', and `make check' commands ran successfully on
my system (Arch Linux, GCC 7.1.1, GNU C Library 2.25).
To speed up the build, I usually run the Make commands with `-j8' to
build in parallel on 8 threads on this system. `make -j8' worked nicely
and everything was built. But when I ran `make check -j8', there was a
segmentation fault for the `vector' tests (in P.S.). So I removed the
`-j8' and all tests passed. This is probably due to dependencies in a
multi-threaded check (where the tests are built at the same time, not
after each other).
So, I had a look at `vector/Makefile.am'. It shows that indeed no
dependencies are defined for these tests. We had the same issue in
Gnuastro's `make check' and was able to solve it using an intermediate
script to run the built programs (and thus not including
`$(check_PROGRAMS)' in `TESTS'.
In the link below you can see Gnuastro's `tests/Makefile.am' (we have
merged all the tests of all the programs/libraries into one Makefile).
In particular, you can see the part under the "Library checks" title
(line 194) and its comments.
http://git.savannah.gnu.org/cgit/gnuastro.git/tree/tests/Makefile.am
The `multithread.c' test program depends on the output of another test
(`mkprof/mosaic1.sh'). So we have not put `$(check_PROGRAMS)' in `TESTS'
and instead defined a small script (`lib/multithread.sh') which depends
on the output of the dependent test (`mkprof/mosaic1.sh.log', line 207).
Ofcourse, in the current architecture, GSL's tests are not unified in
one `Makefile.am', but are distributed over separate files with a
handful of (sometimes only one) test(s) in each. So running the tests in
parallel will not significantly improve the speed. But to avoid
confusion in cases like this, it can good to define dependencies like
this so those tests that depend on others don't fail.
Thank you very much,
Mohammad
P.S.
make[2]: Entering directory '/home/id/desktop/gsl-2.3.90/vector'
make[3]: Entering directory '/home/id/desktop/gsl-2.3.90/vector'
../test-driver: line 95: 32689 Segmentation fault (core dumped)
"$@" > $log_file 2>&1
FAIL: test_static
PASS: test
make[4]: Entering directory '/home/id/desktop/gsl-2.3.90/vector'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/home/id/desktop/gsl-2.3.90/vector'
============================================================================
Testsuite summary for gsl 2.3.90
============================================================================
# TOTAL: 2
# PASS: 1
# SKIP: 0
# XFAIL: 0
# FAIL: 1
# XPASS: 0
# ERROR: 0
============================================================================
See vector/test-suite.log
============================================================================
make[3]: *** [Makefile:741: test-suite.log] Error 1
make[3]: Leaving directory '/home/id/desktop/gsl-2.3.90/vector'
make[2]: *** [Makefile:849: check-TESTS] Error 2
make[2]: Leaving directory '/home/id/desktop/gsl-2.3.90/vector'
make[1]: *** [Makefile:927: check-am] Error 2
make[1]: Leaving directory '/home/id/desktop/gsl-2.3.90/vector'
make: *** [Makefile:961: check-recursive] Error 1