[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GNU Guile 1.8.4 released
From: |
Neil Jerram |
Subject: |
Re: GNU Guile 1.8.4 released |
Date: |
Wed, 27 Feb 2008 23:55:27 +0000 |
User-agent: |
Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux) |
Kamaraju S Kusumanchi <address@hidden> writes:
> Just wanted to bring to your attention that guile 1.8.4 failed to build on
> alpha, ia64 architectures. The build log can be found at
>
> http://buildd.debian.org/fetch.cgi?pkg=guile-1.8&arch=alpha&ver=1.8.4%2B1-1&stamp=1203917145&file=log&as=raw
>
> http://buildd.debian.org/fetch.cgi?pkg=guile-1.8&arch=ia64&ver=1.8.4%2B1-1&stamp=1203835823&file=log&as=raw
>
> It would be great if they can be fixed.
Looking into ia64 first... On my test machine, and without the Debian
patches, I'm seeing other problems that prevent me from reaching the
Illegal instruction that your build is getting.
One of them is: Undefined reference to .L16, when trying to link
libguile/.libs/guile
This seems related to the use of a union, containing several different
pointer types, in uvec_print() in libguile/srfi-4.c. Specifically, it
seems that the .L16 reference is pulled in by pointer dereferences
like the "*np.u8" in
case SCM_UVEC_U8: scm_uintprint (*np.u8, 10, port); np.u8++; break;
If I replace "*np.u8" by "1", there is no longer any undefined
reference.
If I declare a separate variable "scm_t_uint8 *u8", and use that
instead of np.u8, there is no longer any undefined
reference.
I could rewrite the code to avoid the union, but I'd like to
understand what's going on here first. Can anyone help?
Thanks,
Neil