bug-ncurses
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Building any ncurses source on Mac OS 10.1.5: SOLVED


From: Scott Corscadden
Subject: Re: Building any ncurses source on Mac OS 10.1.5: SOLVED
Date: Sun, 8 Feb 2004 09:53:09 -0500

Great! I can't thank you enough Thomas. That worked perfectly. To summarize (in case I forget this later and need to grep the archives) - To build lynx on Mac OS X Server 10.1:

- Get latest copy of ncurses (5.4 will do, as will 5.3 with the January rollup patch, plus an updated ncurses/base/MKlib_gen.sh)
- configure, make, sudo make install

- Get lynx 2.8.5
- Set environment variable to enable ncurses library detection:
        setenv LIBS "-L/usr/local/lib -lncurses"
(or)    export LIBX="-L/usr/local/lib -lncurses"
- Configure with ncurses:
        ./configure --with-screen=ncurses
- make, sudo make install

Your karmic standing has been modded +5 Essential.
./sc


On Feb 7, 2004, at 2:08 PM, Thomas Dickey wrote:

On Sat, 7 Feb 2004, Scott Corscadden wrote:

Ah - nothing is ever easy. Must have gotten confused. Redownloaded 5.3, applied latest rollup. For lynx2-8-5, errored out (could it be that the
default ncurses "sudo make install" places the libraries where they're
not seen?). Will next try 2-8-4, but first, here's the output for

That's possible.  What I know of OS X is that originally (I don't know
version numbers) it came with a BSD curses, but shortly after ncurses
was added.  There are problems installing shared libraries (the system
prefers the ones that are already there).  But I don't have direct
access to OS X - it's all secondhand info.

2-8.5:

bash-2.05$ ./configure --with-screen=ncurses
creating cache ./config.cache
checking host system type... powerpc-apple-darwin5.5
Configuring for darwin5.5
...
checking for initscr... yes
checking for ncurses version... (cached) 5.4.20040110

that's better. One part is puzzling - the problem you're looking at. If initscr is found initially, that implies the configure script was able to link "some" curses functions from the system library. But it might not be the one you want. The link command shown doesn't list a "-lncurses" for instance (or a "-L" option to tell what directory to get it from). When
you have more than one curses library installed, sometimes you have to
give the configure script some help (it tries, but there are a lot of ways to fail). I'd set the $LIBS variable before configuring lynx to point to the latest library (and possibly $CPPFLAGS in case it got confused about
headers - though that doesn't seem to be a problem here).  For example
(I'm not sure where your library is installed):

        setenv LIBS "-L/usr/local/lib -lncurses"

Linking and creating Lynx executable
cc -D_XOPEN_SOURCE=500 -D_POSIX_C_SOURCE -DHAVE_CONFIG_H
-DLOCALEDIR=\"/usr/local/share/locale\" -I. -I.. -Ichrtrans
-I./chrtrans -I.. -I../src -I../WWW/Library/Implementation   -O2   -o
lynx  LYClean.o LYShowInfo.o LYEdit.o LYStrings.o LYMail.o HTAlert.o
GridText.o LYGetFile.o LYMain.o LYMainLoop.o LYCurses.o LYBookmark.o
LYUtils.o LYOptions.o LYReadCFG.o LYSearch.o LYHistory.o LYForms.o
LYPrint.o LYrcFile.o LYDownload.o LYNews.o LYKeymap.o HTML.o
HTFWriter.o HTInit.o DefaultStyle.o LYUpload.o LYLeaks.o LYexit.o
LYJump.o LYList.o LYCgi.o LYTraversal.o LYEditmap.o LYCharSets.o
LYCharUtils.o LYMap.o LYCookie.o LYStyle.o LYHash.o LYPrettySrc.o
TRSTable.o UCdomap.o UCAux.o UCAuto.o  LYLocal.o
../WWW/Library/Implementation/libwww.a
/usr/bin/ld: Undefined symbols:
_acs_map
_getmouse
_ungetmouse
_scrollok
_clearok
_keypad
_mouseinterval
_mousemask
_wborder
_wtouchln
make[1]: *** [lynx] Error 1
make: *** [all] Error 2

./sc

On Feb 7, 2004, at 11:36 AM, Thomas Dickey wrote:

On Sat, 7 Feb 2004, Scott Corscadden wrote:

Yes, I spoke too soon - 2.8.3 failed too, but in a different place.
Here's the output for 2.8.5:

bash-2.05$ ./configure
creating cache ./config.cache
checking host system type... powerpc-apple-darwin5.5
Configuring for darwin5.5
...

checking for screen type... curses
checking for extra include directories... no
checking if we have identified curses headers... curses.h
checking for curses.h... yes
checking for ncurses version... 5.2.20001021

Is this correct?  I was thinking that you were building 5.3

checking if we have identified curses libraries... yes
checking for curses performance tradeoff... no
checking for curses touchline function... bsd

For whatever reason (the clue would be in config.log), the configure
check to distinguish two flavors of touchline() did not work.  You
can usually work around this using

        configure --with-screen=ncurses

cc -D_XOPEN_SOURCE=500 -D_POSIX_C_SOURCE -DHAVE_CONFIG_H
-DLOCALEDIR=\"/usr/local/share/locale\" -I. -I.. -Ichrtrans
-I./chrtrans -I.. -I../src -I../WWW/Library/Implementation   -O2  -c
./LYCurses.c
./LYCurses.c:1732: too many args (4) to macro 'touchline' (3 expected)
cpp-precomp: warning: errors during smart preprocessing, retrying in
basic mode
make[1]: *** [LYCurses.o] Error 1
make: *** [all] Error 2
bash-2.05$

./sc

On Feb 7, 2004, at 10:37 AM, Thomas Dickey wrote:

On Sat, 7 Feb 2004, Scott Corscadden wrote:

Whoops! Strike that last comment - 2.8.3 seems to have gotten by the
LYCurses.o file. Apologies, and have a great weekend Thomas.

What was the error message for 2.8.5?

--
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net




--
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net




--
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net






reply via email to

[Prev in Thread] Current Thread [Next in Thread]