From owner-freebsd-current Tue Dec 1 09:46:28 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id JAA22895 for freebsd-current-outgoing; Tue, 1 Dec 1998 09:46:28 -0800 (PST) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from polaris.we.lc.ehu.es (polaris.we.lc.ehu.es [158.227.6.43]) by hub.freebsd.org (8.8.8/8.8.8) with SMTP id JAA22132; Tue, 1 Dec 1998 09:41:25 -0800 (PST) (envelope-from jose@we.lc.ehu.es) Received: from we.lc.ehu.es by polaris.we.lc.ehu.es (SMI-8.6/SMI-SVR4) id SAA04431; Tue, 1 Dec 1998 18:38:11 +0100 Message-ID: <36642982.9B0D6B66@we.lc.ehu.es> Date: Tue, 01 Dec 1998 18:38:10 +0100 From: "José Mª Alcaide" Organization: Universidad del País Vasco - Dept. de Electricidad y Electrónica X-Mailer: Mozilla 4.06 [en] (X11; I; FreeBSD 2.2.7-STABLE i386) MIME-Version: 1.0 To: obrien@NUXI.com CC: Nathan Dorfman , freebsd-current@FreeBSD.ORG, freebsd-bugs@FreeBSD.ORG Subject: Re: [patch] libmytinfo breaks vim-5.3 port, maybe others? References: <19981023205115.A5357@rtfm.net> <19981129004517.B28637@nuxi.com> Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG David O'Brien wrote: > > > Vim-5.3 (compiled from ports) won't run in -g (gvim) mode with > > libmytinfo. At first I thought it was vim breakage, or Motif/Athena > > or even X11 breakage. But read on: > > ..snip.. > > > Anyway, I noticed something weird: > > > > libmytinfo.so.2 => /usr/lib/libmytinfo.so.2 (0x2834b000) > > This is automatically linked in if libncurses is being used. > Apply this patch to the vim5 port's Makefile: --------------------------------Cut------------------------------------ --- Makefile.orig Thu Oct 15 02:35:11 1998 +++ Makefile Tue Dec 1 18:12:12 1998 @@ -29,7 +29,7 @@ WRKSRC= ${WRKDIR}/${DISTNAME}/src PATCH_DIST_ARGS= -d ${WRKDIR}/${DISTNAME} --forward --quiet -E ${PATCH_DIST_STRIP} -MAKE_FLAGS= CONF_ARGS="--prefix=${PREFIX} --enable-max-features" -f +MAKE_FLAGS= CONF_ARGS="--prefix=${PREFIX} --enable-max-features --with-tlib=termlib" -f ALL_TARGET= # MAN1= vim.1 xxd.1 ectags.1 --------------------------------Cut------------------------------------ This patch forces linking against termlib instead of ncurses. Obviously this is only a workaround for a problem in the ncurses library. The vim5.3's "configure" script checks for tgetent() in ncurses. It's found in the 3.0 libncurses (so vim is linked with it), but this check fails under FreeBSD 2.2.x, so it's linked with libtermlib. BTW, I've just found a flaw related to the termcap and termlib libraries in /usr/lib under FreeBSD-3.0-RELEASE. Watch the output of ls -li *term*: 23269 -r--r--r-- 2 root wheel 18522 17 oct 18:59 libtermcap.a 23271 lrwxrwxrwx 1 root wheel 15 9 nov 17:01 libtermcap.so -> libtermcap.so.2 23270 -r--r--r-- 1 root wheel 15108 17 oct 18:59 libtermcap.so.2 23682 -r--r--r-- 2 root wheel 19760 16 oct 18:06 libtermcap_p.a 23269 -r--r--r-- 2 root wheel 18522 17 oct 18:59 libtermlib.a 23272 lrwxrwxrwx 1 root wheel 15 9 nov 17:01 libtermlib.so -> libtermcap.so.2 23682 -r--r--r-- 2 root wheel 19760 16 oct 18:06 libtermlib_p.a There is no libtermlib.so.2!! This explains the output of the command "ldconfig -r | fgrep term": 7:-ltermcap.2 => /usr/lib/libtermcap.so.2 libtermlib.so.2 does not appear. It seems there is a bug in the installation script of this libraries. Until it's fixed, the solution is easy: cd /usr/lib rm libtermlib.so ln libtermcap.so.2 libtermlib.so.2 ln -s libtermlib.so.2 libtermlib.so And that's all. -- JMA ----------------------------------------------------------------------- José Mª Alcaide | mailto:jose@we.lc.ehu.es Universidad del País Vasco | http://www.we.lc.ehu.es/~jose Dpto. de Electricidad y Electrónica | Facultad de Ciencias - Campus de Lejona | Tel.: +34-946012479 48940 Lejona (Vizcaya) - SPAIN | Fax: +34-944858139 ----------------------------------------------------------------------- "Go ahead... make my day." - H. Callahan To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message