Mark Duckworth wrote:
I'm stuck on gmp right now. We can get past it by disabling gmp's
use of obstack_vprintf
I tried to cross-build libgmp with my latest GCC 4.3.3 on Cygwin, it
has built fine. I have tricked the Makefiles to cross-build the tests
(without running them), then I ran them on ARAnyM. (I don't know why
but the C++ tests don't seem to have been built).
Most of the test have passed without intervention.
I had to adjust the stack for three of them:
stack -S 256K t-fdiv
stack -S 256K t-tdiv
stack -S 256K reuse
After that, they ran fine.
Then I went to the t-printf test.
I guess I got the same output as you:
gmp_obstack_vprintf wrong
fmt |%Md|
got ||
want |0|
got_len -1
ob_len 0
want_len 1
The test calls gmp_obstack_vprintf(), then it turns to call the
MiNTLib in obstack_vprintf() then vprintf().
vfprintf() returns -1, it means failure.
Look at the MiNTLib sources at mintlib/stdio/vfprintf.c
http://sparemint.org/cgi-bin/cvsweb/mintlib/stdio/vfprintf.c?rev=1.5
That source is quite horrible and not debugger friendly :-(
It seems that it fails very soon due to the macro ARGCHECK() (maybe
because a bad FILE status ??)
So maybe gmp tries to use an unsupported feature of the MiNTLib, or
there is a bug in the MiNTLib, or something totally different.
But I'm too tired for continuing now.