Recipe to build dieharder-3.31.1
on a Cygwin platform.
It requires at least packages : cygwin-devel, gcc-core, make, autoconf2.5, automake1.11, libtool, libgsl-devel (I could have missed other packages)
The "$" is the cursor of bash command line
$ wget https://webhome.phy.duke.edu/~rgb/General/dieharder/dieharder-3.31.1.tgz
$ tar -xf dieharder-3.31.1.tgz
$ cd dieharder-3.31.1
the following is brutal but effective
$ find . -name "configure*" -exec sed -i -e "s/-std=c99//" {} \;
$ find . -name "Makefile*" -exec sed -i -e "s/-std=c99//" {} \;
using specific version of autoconf:
$ autoreconf-2.69 -ivf
$ ./configure
$ make LDFLAGS="-Wl,--allow-multiple-definition -no-undefined"
$ make install
The program, library and documentation are installed under /usr/local
$ file /usr/local/bin/*hard*
/usr/local/bin/cygdieharder-3.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows, 19 sections
/usr/local/bin/dieharder.exe: PE32+ executable (console) x86-64, for MS Windows, 19 sections
and the program is at least functional
$ dieharder |head
#=============================================================================#
# dieharder version 3.31.1 Copyright 2003 Robert G. Brown #
#=============================================================================#
Usage:
dieharder [-a] [-d dieharder test number] [-f filename] [-B]
[-D output flag [-D output flag] ... ] [-F] [-c separator]
[-g generator number or -1] [-h] [-k ks_flag] [-l]
[-L overlap] [-m multiply_p] [-n ntuple]