My last commit message (for commit 0df4e30) contained the following
paragraph concerning intermittent Ada example build failures during
various comprehensive tests that I encountered:

"These checks showed intermittent failures for certain parts
(xtraditional28a, xtraditional33a) of the Ada part of the build with
two separate complaints about various files written by the gnat
compiler.  At this stage I cannot figure out the source of this issue
since it comes and goes and is hard to reproduce.  But at one point I
got through the entire test above without Ada failures, and found an
obvious issue with the static OCaml binding library which I fixed and
which has absolutely nothing to do with Ada.  I then tried the test
above again, which failed for the nondynamic case for the build of one
of the Ada examples.  I then followed up by a specific static build of
the ocaml binding library that exercised the fixed build-system CMake
code for that case, and all was well.  Therefore, I think from these
piecemeal results that all is well with the current commit, but
further testing needs to be done as above once I figure out the source
of the intermittent Ada build errors."

One possibility to explain intermittent failures like this is some
hardware issue.  But after the above result I hammered my box with all
sorts of hardware tests which it passed with flying colours.  Part of
those tests involved a system reboot, and after that the comprehensive
test that previously was failing in different places due to different
Ada example build issues on successive runs completed with perfect
results!  Which is a nice result since it confirms the intrusive
changes I made for commit 0df4e30 are valid.  Furthermore, because the
Ada results were perfect for this comprehensive test after a reboot,
and many prior tests except for the ones used for this particular
commit for a Linux operating system that had been up for a long time,
there is a possibility that the gnatmake issue on Linux is it becomes
unreliable if the Linux platform is up too long.

So those good hardware tests, the good Ada example builds (and all
other builds and tests) that occurred in the comprehensive test
*after* a reboot, and the intermittent failures before the reboot just
for this commit occurring just for Ada example builds argues strongly
these intermittent failures are not due to hardware issues.  So that
leaves some issue with one or all of the components (gnatlink, etc.)
of my system gnatmake Ada build tool or the software stack those
components depend on as the likely culprit for the intermittent Ada
example build failures in this case.  And one possibility is the Linux
kernel itself was beginning to get wonky after many days up, and
gnatmake is peculiarly sensitive to such issues.

Anyhow, if you combine that bad gnatmake experience on Linux with
Arjen's known difficulties with gnatmake on Cygwin and Jerry's known
difficulties with gnatmake on Mac OS X, I get the impression that
gnatmake is pretty unreliable regardless of platform (perhaps through
no fault of its own other than possibly a design that depends on the
underlying operating system working perfectly). Anyhow, the observed
gnatmake unreliability is something to keep in mind going forward for
those of you who run into issues with gnatmake.

Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (; the Time
Ephemerides project (; PLplot scientific plotting
software package (; the libLASi project
(; the Loads of Linux Links project (;
and the Linux Brochure Project (

Linux-powered Science

Check out the vibrant tech community on one of the world's most
engaging tech sites,!
Plplot-devel mailing list

Reply via email to