I was doing some tests with the mathematical library of Zeus-Framework when I noticed some weird beheviour on my code. I was calculation some huge numbers stored in a 64bit double inside a method implemented in the dynamically loaded library libZeusMath.so. Then I compared the result with a calculation done in my test program, witch is a binary application. The test sometimes failed even when I used a rounding tolerance of 0.0000000001. I coudn't figure out where the problem comes from. More or less by luck I've found a very good advice on the net.
In order to activate the extended precision instead of the double precision on Linux platforms you have to deactivate the line in
#define ENABLE_DOUBLE_PRECISION //#undef ENABLE_DOUBLE_PRECISION
Per default I prefer the double precision.
The following text I copied for you from the original source http://www.wrcad.com/linux_numerics.txt.