From owner-freebsd-current Tue Jul 17 1:34:39 2001 Delivered-To: freebsd-current@freebsd.org Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by hub.freebsd.org (Postfix) with ESMTP id 1DBA037B405; Tue, 17 Jul 2001 01:34:34 -0700 (PDT) (envelope-from bde@zeta.org.au) Received: from bde.zeta.org.au (bde.zeta.org.au [203.2.228.102]) by mailman.zeta.org.au (8.9.3/8.8.7) with ESMTP id SAA12174; Tue, 17 Jul 2001 18:34:26 +1000 Date: Tue, 17 Jul 2001 18:32:11 +1000 (EST) From: Bruce Evans X-Sender: bde@besplex.bde.org To: John Polstra Cc: current@FreeBSD.ORG, peter@FreeBSD.ORG Subject: Re: ncurses: 4.x -> 5.x buildworld failure + patch In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Mon, 16 Jul 2001, John Polstra wrote: > While upgrading an old (October 2000) -current system which did not > have a libc.so.5 yet, I ran into this failure in src/lib/ncurses: > > cc -o make_keys -nostdinc -O -pipe -mcpu=ev56 -mcpu=ev56 -I. -I/c/src/lib/libncurses > -I/c/src/lib/libncurses/../../contrib/ncur > ses/ncurses -I/c/src/lib/libncurses/../../contrib/ncurses/include -Wall > -DFREEBSD_NATIVE -DNDEBUG -DHAVE_CONFIG_H -DTERMIOS -I/ > usr/obj/c/src/alpha/usr/include > /c/src/lib/libncurses/../../contrib/ncurses/ncurses/tinfo/make_keys.c > ./make_keys /c/src/lib/libncurses/../../contrib/ncurses/ncurses/tinfo/keys.list > > init_keytry.h > /usr/libexec/ld-elf.so.1: Shared object "libc.so.5" not found > *** Error code 1 > > I am reasonably sure the same problem would occur in trying to upgrade > from -stable to -current. > > I patched it as shown below and the buildworld was able to finish. > > Index: Makefile > =================================================================== > RCS file: /home/ncvs/src/lib/libncurses/Makefile,v > retrieving revision 1.51 > diff -u -r1.51 Makefile > --- Makefile 2001/06/12 01:14:02 1.51 > +++ Makefile 2001/07/16 15:24:59 > @@ -330,10 +330,10 @@ > build-tools: make_hash make_keys > > make_keys: make_keys.c names.c curses.h ncurses_def.h > - ${CC} -o $@ ${CFLAGS} ${NCURSES}/ncurses/tinfo/make_keys.c > + ${CC} -o $@ -static ${CFLAGS} ${NCURSES}/ncurses/tinfo/make_keys.c > > make_hash: comp_hash.c hashsize.h curses.h ncurses_def.h > - ${CC} -o $@ ${CFLAGS} -DMAIN_PROGRAM \ > + ${CC} -o $@ -static ${CFLAGS} -DMAIN_PROGRAM \ > ${NCURSES}/ncurses/tinfo/comp_hash.c > > # ./configure generated I have used essentially the same patch (with ${LDFLAGS} instead of -static) for a year or two, but I don't quite understand why you needed it. make_keys and make_hash are build-tools, so they should get built in the host environment and be linked to the host shared libraries (if any). The command line seems to show them being built in the target environment (-I/usr/obj/c/src/alpha/usr/include). The -mcpu stuff also seems to be a problem (but not here). I think we use the new bsd.cpu.mk even for building tools. It might not work on old hosts. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message