Hi Dustin,
I did a gmake test that revealed three more files with MAX/MIN (tweak.c, tweak2.c, test_healpix.c) and a missing isfinite() (test_2mass.c).
After fixing that gmake test compiles.
/util/test prints tons of numbers and then crashes with a segmentation fault:
[... tons of numbers]
check: ok
appended: 42
Before sorting:
[ 34951, 34950, 34949, 35049, 35149, 29951, 29950, 29949, 34999, 34998, 5099, 5199, 39849, 39949, 4999, 35249, 29952, 34952, 5299, 35349, 29953, 34953, 5399, 35449, 29954, 34954, 5499, 35549, 29955, 34955, 5599, 35649, 29956, 34956, 5699, 35749, 29957, 34957, 5799, 35849, 29958, 34958, 5899, 35949, 29959, 34959, 5999, 36049, 29960, 34960, 6099, 36149, 29961, 34961, 6199, 36249, 29962, 34962, 6299, 36349, 29963, 34963, 6399, 36449, 29964, 34964, 6499, 36549, 29965, 34965, 6599, 36649, 29966, 34966, 6699, 36749, 29967, 34967, 6799, 36849, 29968, 34968, 6899, 36949, 29969, 34969, 6999, 37049, 29970, 34970, 7099, 37149, 29971, 34971, 7199, 37249, 29972, 34972, 7299, 37349, 29973, 34973, 7399, 37449, 29974, 34974, 7499, 37549, 29975, 34975, 7599, 37649, 29976, 34976, 7699, 37749, 29977, 34977, 7799, 37849, 29978, 34978, 7899, 37949, 29979, 34979, 7999, 38049, 29980, 34980, 8099, 38149, 29981, 34981, 8199, 38249, 29982, 34982, 8299, 38349, 29983, 34983, 8399, 38449, 29984, 34984, 8499, 38549, 29985, 34985, 8599, 38Segmentation Fault - core dumped
Doing a pstack core reveals:
core 'core' of 3467: ./test
080470ba ???????? (fed33988, 80f9070, a, 80f95f4, 85bc978, cb)
080f95f4 bl_sort_with_userdata.constprop.0 () + 354
/blind/test crashes with a segmentation fault - core dumped without any other output:
pstack core shows
core 'core' of 3462: ./test
08047267 ???????? (fee72a00, 8047238, 6, 4, 819f080, 8191950)
080f242d permuted_sort (8195970, 8191950, 8047458, 808d12e, 8195970, 8047400) + 4d
08075b5c test_sorting (80746c3, 8195170, 8075619, 8191950) + 21c
080746e3 CuTestRun (0, 1, 0, 8047498, 19, 0) + 43
08075940 test_sorting (676e6974, 0, 11, 0, 74736574, 6577745f)
726f735f ???????? ()
/libkd/test runs successfully and finishes with "OK (31 tests)"
/catalogs/test *seems* to run fine but one file is missing which one test likely fails:
byte 80: 0000000000
byte 84: 0536875740
File "hd.fits" does not exist; test skipped.
Got: 85
Got: 67
...F...
There was 1 failure:
1) test_read_2mass: test_2mass.c:107: dist null
!!!FAILURES!!!
Runs: 7 Passes: 6 Fails: 1
So yes, it seems it is a sorting related problem...
I am attaching the man page for Solaris' qsort...
Interestingly I do not see any output related to qsort when I do a gmake reconfig:
# gmake reconfig
rm -f util/os-features-config.h util/makefile.os-features
gmake -C util config
gmake[1]: Entering directory '/Desktop/packages/astrometry.net-0.64/util'
Makefile:61: makefile.os-features: No such file or directory
---- Error messages in the next few commands are not necessarily bugs ----
(we're checking how things works on your computer)
rm -f os-features-makefile.log
Testing netpbm...
NETPBM_INC_ORIG is -I/opt/csw/include/netpbm
NETPBM_LIB_ORIG is -L/opt/csw/lib -lnetpbm
( \
echo "# This file is generated by util/Makefile."; \
((gcc -o os-features-test-netpbm-make \
-g -Wall -std=gnu89 -ffinite-math-only -fno-signaling-nans -pthread -march=native -O3 -fomit-frame-pointer -DNDEBUG -fpic -Winline -I../include -I../include/astrometry -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -DAN_GIT_REVISION='"0.64"' -DAN_GIT_DATE='"Thu_Oct_22_10:00:31_2015_-0400"' -DAN_GIT_URL='"
https://github.com/dstndstn/astrometry.net"' -I../util -I/opt/csw/include/cairo -I/usr/include/libpng12 -I../include -I../include/astrometry -I../gsl-an -I../include -I../include/astrometry -I../gsl-an -I. -DTEST_NETPBM_MAKE -I/opt/csw/include/netpbm os-features-test.c -g -Wall -std=gnu89 -ffinite-math-only -fno-signaling-nans -pthread -march=native -O3 -fomit-frame-pointer -DNDEBUG -fpic -Winline -L/opt/csw/lib -lnetpbm >> os-features-makefile.log && \
./os-features-test-netpbm-make >> os-features-makefile.log && \
echo "HAVE_NETPBM := yes") \
|| (echo "# Astrometry.net didn't find netpbm; not setting HAVE_NETPBM."; \
echo "# See os-features-makefile.log for details."; \
echo "# To re-run this test, do 'make reconfig; make makefile.os-features' (in the 'util' directory)"; \
echo "# Or to do it yourself, just uncomment this line:"; \
echo "# HAVE_NETPBM := yes")) \
; \
echo) > makefile.os-features.tmp
--------------- End of expected error messages -----------------
mv makefile.os-features.tmp makefile.os-features
Config results:
------------------------------
cat makefile.os-features
# This file is generated by util/Makefile.
HAVE_NETPBM := yes
------------------------------
And, by the way, is WCSlib support being compiled in?
pkg-config --exists wcslib && echo yes || echo no
no
WCSLIB_INC:
WCSLIB_LIB:
Hopefully I did not open a can of worms (guess I already have!).
Karsten