unofficial mirror of bug-guile@gnu.org 
 help / color / mirror / Atom feed
* Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4
@ 2008-02-22 18:03 Hans Aberg
  2008-02-23 10:13 ` Ludovic Courtès
  2008-03-07 19:55 ` Neil Jerram
  0 siblings, 2 replies; 9+ messages in thread
From: Hans Aberg @ 2008-02-22 18:03 UTC (permalink / raw)
  To: bug-guile

Guile-1.8.4 does not compile on Mac OS X 10.4.11 PPC G4 (see below).

   Hans Aberg


----
Making all in guile-readline
../libguile/guile-snarf -o readline.x readline.c -DHAVE_CONFIG_H  -I.  
-I.. -I./..  -g -O2
make  all-recursive
Making all in ice-9
make[4]: Nothing to be done for `all'.
/bin/sh ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H  -I. - 
I. -I.. -I./..    -g -O2 -MT readline.lo -MD -MP -MF .deps/ 
readline.Tpo -c -o readline.lo readline.c
mkdir .libs
  gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./.. -g -O2 -MT readline.lo -MD - 
MP -MF .deps/readline.Tpo -c readline.c  -fno-common -DPIC -o .libs/ 
readline.o
readline.c: In function ‘rl_cleanup_after_signal’:
readline.c:109: error: ‘rl_pending_input’ undeclared (first use in  
this function)
readline.c:109: error: (Each undeclared identifier is reported only once
readline.c:109: error: for each function it appears in.)
readline.c: In function ‘scm_init_readline’:
readline.c:564: warning: assignment from incompatible pointer type
make[4]: *** [readline.lo] Error 1
make[3]: *** [all-recursive] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
----



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4
  2008-02-22 18:03 Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4 Hans Aberg
@ 2008-02-23 10:13 ` Ludovic Courtès
  2008-02-23 18:21   ` Neil Jerram
  2008-03-07 19:55 ` Neil Jerram
  1 sibling, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2008-02-23 10:13 UTC (permalink / raw)
  To: bug-guile

Hi,

Hans Aberg <haberg@math.su.se> writes:

> Guile-1.8.4 does not compile on Mac OS X 10.4.11 PPC G4 (see below).

> readline.c:109: error: ‘rl_pending_input’ undeclared (first use in

As we already discussed, you'll want to install GNU Readline, as opposed
to the BSD Editline broken Readline compatibility layer that you're
currently using.

On one hand, it's become such a common problem that we may want to
detect it at configure-time.  OTOH, a compatibility layer is supposed to
be compatible, and it would be annoying to have to work around
Editline's defects.  :-)

Thanks,
Ludovic.





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4
  2008-02-23 10:13 ` Ludovic Courtès
@ 2008-02-23 18:21   ` Neil Jerram
  0 siblings, 0 replies; 9+ messages in thread
From: Neil Jerram @ 2008-02-23 18:21 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: bug-guile

ludo@gnu.org (Ludovic Courtès) writes:

> Hi,
>
> Hans Aberg <haberg@math.su.se> writes:
>
>> Guile-1.8.4 does not compile on Mac OS X 10.4.11 PPC G4 (see below).
>
>> readline.c:109: error: ‘rl_pending_input’ undeclared (first use in
>
> As we already discussed, you'll want to install GNU Readline, as opposed
> to the BSD Editline broken Readline compatibility layer that you're
> currently using.
>
> On one hand, it's become such a common problem that we may want to
> detect it at configure-time.  OTOH, a compatibility layer is supposed to
> be compatible, and it would be annoying to have to work around
> Editline's defects.  :-)

I've started a FAQ (to be included in future Guile releases), and this
is the first entry:

=========>8===========
** readline.c: error: `rl_pending_input' undeclared

This occurs if the Readline library detected by Guile's configure
script is actually the BSD Editline project's supposedly
Readline-compatible library.  The immediate fix is to uninstall
Editline and install the real GNU Readline instead.  When you do this,
please note that it probably won't work to keep Editline in /usr and
install GNU Readline in /usr/local (or some similar arrangement),
because the Editline library will then still be picked up at link and
run time; it's best (subject to other constraints) to remove Editline
completely.

For the longer term, please also report this problem to the Editline
project, to encourage them to fix it in the next release of their
Readline compatibility library.
=========>8===========

Regards,
        Neil





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4
  2008-02-22 18:03 Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4 Hans Aberg
  2008-02-23 10:13 ` Ludovic Courtès
@ 2008-03-07 19:55 ` Neil Jerram
  2008-03-07 21:20   ` Hans Aberg
  1 sibling, 1 reply; 9+ messages in thread
From: Neil Jerram @ 2008-03-07 19:55 UTC (permalink / raw)
  To: Hans Aberg; +Cc: bug-guile

Hans Aberg <haberg@math.su.se> writes:

> readline.c: In function ‘rl_cleanup_after_signal’:
> readline.c:109: error: ‘rl_pending_input’ undeclared (first use in
> this function)
> readline.c:109: error: (Each undeclared identifier is reported only once
> readline.c:109: error: for each function it appears in.)
> readline.c: In function ‘scm_init_readline’:
> readline.c:564: warning: assignment from incompatible pointer type
> make[4]: *** [readline.lo] Error 1
> make[3]: *** [all-recursive] Error 1
> make[2]: *** [all] Error 2
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2

Hi Hans,

From our new FAQ (which will be part of the distribution in 1.8.5):

========FAQ=========
** readline.c: error: `rl_pending_input' undeclared

This occurs if the Readline library detected by Guile's configure
script is actually the BSD Editline project's supposedly
Readline-compatible library.  The immediate fix is to uninstall
Editline and install the real GNU Readline instead.  When you do this,
please note that it probably won't work to keep Editline in /usr and
install GNU Readline in /usr/local (or some similar arrangement),
because the Editline library will then still be picked up at link and
run time; it's best (subject to other constraints) to remove Editline
completely.

For the longer term, please also report this problem to the Editline
project, to encourage them to fix it in the next release of their
Readline compatibility library.
========FAQ=========

Does that help?

Regards,
        Neil





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4
  2008-03-07 19:55 ` Neil Jerram
@ 2008-03-07 21:20   ` Hans Aberg
  2008-03-07 22:21     ` Neil Jerram
  0 siblings, 1 reply; 9+ messages in thread
From: Hans Aberg @ 2008-03-07 21:20 UTC (permalink / raw)
  To: Neil Jerram; +Cc: bug-guile

On 7 Mar 2008, at 20:55, Neil Jerram wrote:

> From our new FAQ (which will be part of the distribution in 1.8.5):
>
> ========FAQ=========
> ** readline.c: error: `rl_pending_input' undeclared
>
> This occurs if the Readline library detected by Guile's configure
> script is actually the BSD Editline project's supposedly
> Readline-compatible library.  The immediate fix is to uninstall
> Editline and install the real GNU Readline instead.  When you do this,
> please note that it probably won't work to keep Editline in /usr and
> install GNU Readline in /usr/local (or some similar arrangement),
> because the Editline library will then still be picked up at link and
> run time; it's best (subject to other constraints) to remove Editline
> completely.
>
> For the longer term, please also report this problem to the Editline
> project, to encourage them to fix it in the next release of their
> Readline compatibility library.
> ========FAQ=========
>
> Does that help?

This might indeed be the problem - I think I saw that Mac OS X comes  
with Editline.

I have since installed Readline; I need to check if it fixes it.

Otherwise, a fix might be that the Guile installation checks for  
readline in /usr/local/.

   Hans Aberg






^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4
  2008-03-07 21:20   ` Hans Aberg
@ 2008-03-07 22:21     ` Neil Jerram
  2008-03-07 23:13       ` Hans Aberg
  0 siblings, 1 reply; 9+ messages in thread
From: Neil Jerram @ 2008-03-07 22:21 UTC (permalink / raw)
  To: Hans Aberg; +Cc: bug-guile

Hans Aberg <haberg@math.su.se> writes:

> Otherwise, a fix might be that the Guile installation checks for
> readline in /usr/local/.

I could well be wrong, but my current understanding is that that won't
work, because at link time GCC or ld.so will always prefer to pick up
-lreadline from /usr/lib rather than from /usr/local/lib.

Regards,
     Neil





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4
  2008-03-07 22:21     ` Neil Jerram
@ 2008-03-07 23:13       ` Hans Aberg
  2008-03-08 12:19         ` Neil Jerram
  0 siblings, 1 reply; 9+ messages in thread
From: Hans Aberg @ 2008-03-07 23:13 UTC (permalink / raw)
  To: Neil Jerram; +Cc: bug-guile

On 7 Mar 2008, at 23:21, Neil Jerram wrote:

>> Otherwise, a fix might be that the Guile installation checks for
>> readline in /usr/local/.
>
> I could well be wrong, but my current understanding is that that won't
> work, because at link time GCC or ld.so

(On Mac OS X, dynamic libraries end with .dylib, being a Mach-O  
format. The .so is for a fromat used on GNU/Linux computers.)

> will always prefer to pick up
> -lreadline from /usr/lib rather than from /usr/local/lib.

It could be, because the reason I installed latest readline was that  
I wanted Hugs and GHCi working with UTF-8, and it didn't work.

Suppose I set a soft link from the system readline to the newly  
installed, would it suffice to set it from
   /usr/lib/libreadline.<ext> -> /usr/local/lib/libreadline.<ext>
Or must some other stuff, like in /usr/include, also be relinked?

   Hans Aberg






^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4
  2008-03-07 23:13       ` Hans Aberg
@ 2008-03-08 12:19         ` Neil Jerram
  2008-03-08 13:48           ` Hans Aberg
  0 siblings, 1 reply; 9+ messages in thread
From: Neil Jerram @ 2008-03-08 12:19 UTC (permalink / raw)
  To: Hans Aberg; +Cc: bug-guile

Hans Aberg <haberg@math.su.se> writes:

> On 7 Mar 2008, at 23:21, Neil Jerram wrote:
>
>>> Otherwise, a fix might be that the Guile installation checks for
>>> readline in /usr/local/.
>>
>> I could well be wrong, but my current understanding is that that won't
>> work, because at link time GCC or ld.so
>
> (On Mac OS X, dynamic libraries end with .dylib, being a Mach-O
> format. The .so is for a fromat used on GNU/Linux computers.)

OK, thanks.

>> will always prefer to pick up
>> -lreadline from /usr/lib rather than from /usr/local/lib.
>
> It could be, because the reason I installed latest readline was that I
> wanted Hugs and GHCi working with UTF-8, and it didn't work.
>
> Suppose I set a soft link from the system readline to the newly
> installed, would it suffice to set it from
>   /usr/lib/libreadline.<ext> -> /usr/local/lib/libreadline.<ext>

Yes, that should work.  Sysadmin-wise, it's a confusing change to keep
track of, though.

> Or must some other stuff, like in /usr/include, also be relinked?

No, I don't think that will be needed.  As long as you have
CFLAGS=-I/usr/local/include when you run ./configure, I believe that
headers under /usr/local/include will be picked up in preference to
those under /usr/include.

(BTW, this is something that I've never seen a good explanation for.
-I/usr/local/include takes preference over the standard /usr/include,
but -L/usr/local/lib doesn't take preference over the standard
/usr/lib.  What is the logic there?)

Regards,
        Neil





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4
  2008-03-08 12:19         ` Neil Jerram
@ 2008-03-08 13:48           ` Hans Aberg
  0 siblings, 0 replies; 9+ messages in thread
From: Hans Aberg @ 2008-03-08 13:48 UTC (permalink / raw)
  To: Neil Jerram; +Cc: bug-guile

On 8 Mar 2008, at 13:19, Neil Jerram wrote:

>> (On Mac OS X, dynamic libraries end with .dylib, being a Mach-O
>> format. The .so is for a fromat used on GNU/Linux computers.)
>
> OK, thanks.

For what I have checked, the functions are named the same. So if one  
assumes the dynamic libraries have been created on Mac OS X, the only  
change needed in the source code is to look for files ending  
in .dylib instead of .so.

>>> will always prefer to pick up
>>> -lreadline from /usr/lib rather than from /usr/local/lib.
>>
>> It could be, because the reason I installed latest readline was  
>> that I
>> wanted Hugs and GHCi working with UTF-8, and it didn't work.
>>
>> Suppose I set a soft link from the system readline to the newly
>> installed, would it suffice to set it from
>>   /usr/lib/libreadline.<ext> -> /usr/local/lib/libreadline.<ext>
>
> Yes, that should work.  Sysadmin-wise, it's a confusing change to keep
> track of, though.

Yes, it is a mess. :-)

>> Or must some other stuff, like in /usr/include, also be relinked?
>
> No, I don't think that will be needed.  As long as you have
> CFLAGS=-I/usr/local/include when you run ./configure, I believe that
> headers under /usr/local/include will be picked up in preference to
> those under /usr/include.
>
> (BTW, this is something that I've never seen a good explanation for.
> -I/usr/local/include takes preference over the standard /usr/include,
> but -L/usr/local/lib doesn't take preference over the standard
> /usr/lib.  What is the logic there?)

It is certainly causing problems. Somebody got problems on the GMP  
list reported problems with that package and Guile (Mac OS X 10.5  
Intel perhaps). But it strikes me now, in view of your letters, that  
it might be due to the same issue as with readlib.

Do you happen to know with there are any environment variables one  
might set for GCC, like LIBPATH, INCLUDEPATH, or something, that  
ensures /usr/local is included? This would be a convenient method.

   Hans Aberg






^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2008-03-08 13:48 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-22 18:03 Guile-1.8.4 compile bug Mac OS X 10.4.11 PPC G4 Hans Aberg
2008-02-23 10:13 ` Ludovic Courtès
2008-02-23 18:21   ` Neil Jerram
2008-03-07 19:55 ` Neil Jerram
2008-03-07 21:20   ` Hans Aberg
2008-03-07 22:21     ` Neil Jerram
2008-03-07 23:13       ` Hans Aberg
2008-03-08 12:19         ` Neil Jerram
2008-03-08 13:48           ` Hans Aberg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).