From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Neil Jerram Newsgroups: gmane.lisp.guile.user Subject: Re: Compilation failure. Date: Mon, 29 Jun 2009 21:55:53 +0100 Message-ID: <87skhivjxi.fsf@arudy.ossau.uklinux.net> References: <49dd78620805280659x37405d88l4e67ec7ba56a0934@mail.gmail.com> <92338D2C-2E45-43A4-B4A7-AF5CAD54BF38@comcast.net> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1246308977 25387 80.91.229.12 (29 Jun 2009 20:56:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 29 Jun 2009 20:56:17 +0000 (UTC) Cc: Guile User List To: Frank J.R.Hanstick Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Mon Jun 29 22:56:10 2009 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1MLNtV-0004r8-M3 for guile-user@m.gmane.org; Mon, 29 Jun 2009 22:56:06 +0200 Original-Received: from localhost ([127.0.0.1]:43054 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MLNtV-0007HM-0s for guile-user@m.gmane.org; Mon, 29 Jun 2009 16:56:05 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MLNtQ-0007Gf-Ot for guile-user@gnu.org; Mon, 29 Jun 2009 16:56:00 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MLNtM-0007Et-5t for guile-user@gnu.org; Mon, 29 Jun 2009 16:56:00 -0400 Original-Received: from [199.232.76.173] (port=38152 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MLNtM-0007Eq-1m for guile-user@gnu.org; Mon, 29 Jun 2009 16:55:56 -0400 Original-Received: from mail3.uklinux.net ([80.84.72.33]:41428) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MLNtL-0003fn-2u for guile-user@gnu.org; Mon, 29 Jun 2009 16:55:55 -0400 Original-Received: from arudy (host86-152-99-133.range86-152.btcentralplus.com [86.152.99.133]) by mail3.uklinux.net (Postfix) with ESMTP id 402B31F6BD9; Mon, 29 Jun 2009 21:55:54 +0100 (BST) Original-Received: from arudy.ossau.uklinux.net (arudy [127.0.0.1]) by arudy (Postfix) with ESMTP id 8ED6738021; Mon, 29 Jun 2009 21:55:53 +0100 (BST) In-Reply-To: <92338D2C-2E45-43A4-B4A7-AF5CAD54BF38@comcast.net> (Frank J. R. Hanstick's message of "Fri\, 30 May 2008 03\:55\:11 -0700") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.2 (gnu/linux) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.4-2.6 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.user:7354 Archived-At: Frank J. R. Hanstick writes: > Hello, > Thank you for responding. Hi Frank, Here's another response, but I'm afraid a very late one... I've added CC to the list, for the record and for other MacOS users. > I went to > http://www.gnu.org/software/guile/docs/faq/guile-faq.html (the FAQ > pointed to from http://www.gnu.org/software/guile/ guile.html) and > searched for the error and it was no where to be found. I then went > to http://www.gnu.org/software/guile/docs/faq/OLD- > guile-faq.html and came up with the same result. I had done this > before emailing; but, did it again just to be sure I had not missed > anything. Is there another FAQ page? Yes, there was, in the Guile distribution itself. But I see now that this was confusing, so I've removed it that file and merged the information that was in it (about Readline/Editline) into http://www.gnu.org/software/guile/docs/faq/guile-faq.html. > libedit was installed. The source of the installation is most > likely Darwin since I had not installed anything BSD related since > installing the MacOS. There was no readline installed; therefore, I > installed readline-5.2. That corrected the rl_pending_input" error; > but, now get the following: > > ld: warning multiple definitions of symbol _rl_free_line_state > .libs/readline.o definition of _rl_free_line_state in section > (__TEXT,__text) > /usr/local/lib/libreadline.dylib(signals.so) definition of > _rl_free_line_state > ld: warning multiple definitions of symbol _rl_cleanup_after_signal > .libs/readline.o definition of _rl_cleanup_after_signal in section > (__TEXT,__text) > /usr/local/lib/libreadline.dylib(signals.so) definition of > _rl_cleanup_after_signal Those multiple definitions would occur if libreadline was being picked up during the build but not when configure was run. Could you consider - looking at the part of guile-readline/config.log that covers looking for rl_cleanup_after_signal, to see if there are any clues there - running configure again with CPPFLAGS and LDFLAGS set like this: CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib ./configure [your usual options] > ld: warning multiple definitions of symbol _PC > /usr/local/lib/libreadline.dylib(terminal.so) definition of _PC > /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libncurses.dylib > (lib_tputs.o) definition of _PC > ld: warning multiple definitions of symbol _UP > /usr/local/lib/libreadline.dylib(terminal.so) definition of _UP > /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libncurses.dylib > (lib_termcap.o) definition of _UP > ld: warning multiple definitions of symbol _BC > /usr/local/lib/libreadline.dylib(terminal.so) definition of _BC > /usr/lib/gcc/powerpc-apple-darwin8/4.0.1/../../../libncurses.dylib > (lib_termcap.o) definition of _BC I don't know about these, but it looks as though libreadline.dylib already includes those curses symbols. Maybe the -lncurses isn't needed on MacOS? Based on Guile's guile-readline/configure.in and Gnulib's readline.m4, it looks like that might be the case. guile-readline/configure.in tries pretty hard to find and use a curses library: for termlib in ncurses curses termcap terminfo termlib ; do AC_CHECK_LIB(${termlib}, tgoto, [LIBS="-l${termlib} $LIBS"; break]) done but Gnulib is more careful: dnl On some systems, -lreadline doesn't link without an additional dnl -lncurses or -ltermcap. dnl Try -lncurses before -ltermcap, because libtermcap is unsecure dnl by design and obsolete since 1994. Try -lcurses last, because dnl libcurses is unusable on some old Unices. for extra_lib in "" ncurses termcap curses; do LIBS="$am_save_LIBS $LIBREADLINE" if test -n "$extra_lib"; then LIBS="$LIBS -l$extra_lib" fi AC_TRY_LINK([#include #include ], [readline((char*)0);], [gl_cv_lib_readline=" -l$extra_lib"]) if test "$gl_cv_lib_readline" != no; then break fi done Probably Guile (1.8.x) should be do the same as Gnulib does. If you're still in a position to try that out, I'll work out a patch. Regards, Neil