Re: Updating emacs fails
Yes, that's just what I did, and I got an emacs that was linked against the port version of ncurses. It worked fine. I deinstalled and rebuilt and reinstalled the ncurses port, and now emacs builds fine. Gaaah. I think the former version was the package that gets installed with 8.2, but reconstructing the former state would be a challenge. So, uh, I guess we chalk it up to bit rot. "Never mind." I have a couple of other ports that fail in similar ways, but I think I'll wiggle a few more moving parts before reporting the problem. Regards, John Levine, jo...@iecc.com, Primary Perpetrator of "The Internet for Dummies", Please consider the environment before reading this e-mail. http://jl.ly ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: Updating emacs fails
Yes, that's just what I did, and I got an emacs that was linked against the port version of ncurses. It worked fine. I then deleted the ncurses port to make sure emacs *really* was using ncurses from the port, and, indeed, emacs stopped working. That is bizarre. I got the linker errors you saw in that log until I deleted the files from the ncurses port. Regards, John Levine, jo...@iecc.com, Primary Perpetrator of "The Internet for Dummies", Please consider the environment before reading this e-mail. http://jl.ly ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: Updating emacs fails
"John R. Levine" writes: On 23/10/2011 09:03, John R. Levine wrote: >>checking for tparm in -lncurses... no >> >> but that's not correct. libncurses should certainly contain that >> symbol. I get a 'yes' there on my stable/8 machine. As -lncurses is >> part of your LDFLAGS ... hmmm... do you have libncurses on your system >> anywhere other than in /lib ? > > I have the ncurses-5.9 package installed from ports. Several gnome > programs depend on it: > > pkg_delete: package 'ncurses-5.9' is required by these other packages > and may not be deinstalled: > aalib-1.4.r5_6 > gnome-games-2.32.1_2 > guile-1.8.8 > libcdio-0.82_2 > libxine-1.1.19_7 Interesting. Can you try moving /usr/local/lib/libncurses.* and /usr/local/include/ncurses.h aside temporarily and then rebuild emacs? If that works, then looks like you've found a bug in the editors/emacs port, which should be reported to the port's maintainer. >>> >>> Yup, that fixed it. I'll file a bug report. I tried rebuilding some >>> of the packages that allegedly depend on the ncurses port, and they >>> all seemed to work OK, so the right solution may be to deprecate the >>> ncurses port or fold it into the mainline system. >> >> The way it's supposed to work is that emacs will depend on (and link to) >> ncurses if it's installed when the emacs port is built, and to the base >> system curses if not. I just did a quick test, and this was just what >> did happen. So at least part of the problem is local to your system... > > Did you try installing the ncurses port and then rebuilding emacs? For > some reason the library in the ncurses port doesn't define the termcap > routines, leading to the problem. Yes, that's just what I did, and I got an emacs that was linked against the port version of ncurses. It worked fine. I then deleted the ncurses port to make sure emacs *really* was using ncurses from the port, and, indeed, emacs stopped working. > This computer has an extremely vanilla install of 8.2 with gnome. I'm > having trouble figuring what I'm doing different from anyone else > other than perhaps doing portupgrade more often than others do. I do it pretty often myself... ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: Updating emacs fails
There's enough in the emacs sources to make it pretty clear that a failure to have emacs find the termcap functions would be a problem in the emacs port - emacs prefers -lncurses to -ltermcap unless it's being overridden. Well, OK. Now we know that on FreeBSD that doesn't work, since there's an optional ncurses library that doesn't define the termcap functions. Do we fix it, or wave our hands and claim it's someone else's fault? Regards, John Levine, jo...@iecc.com, Primary Perpetrator of "The Internet for Dummies", Please consider the environment before reading this e-mail. http://jl.ly ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: Updating emacs fails
On Mon, Oct 24, 2011 at 08:32:30AM +0200, John R. Levine wrote: > >>It sounds to me like the right thing to do is to fix emacs' configuration > >>so it always uses the base system ncurses whether or not the package > >>version is there. Right? > > > >maybe/maybe not. It depends on what emacs needs - whether it only works > >with either its own termcap module or a conventional termcap library in > >the system. Probably its installation documentation tells what's needed. > > If you look at the build log I posted, it's failing because it's trying to > link in the system termcap library and failing because ncurses doesn't > provide it. In other places, "-ltermcap" is symlinked to -lncurses ("provide" can be taken in more than one way - the functions are always available, whether or not the port is written to use them). A quick look at the emacs 23.3 sources shows various things relevant to ncurses: a) the configure script makes a special check on netbsd to use ncurses rather than the termcap library. b) it has a very old comment suggesting where to get the terminfo or termcap sources (pre-1997). c) the NEWS file points out that LIBS_TERMCAP is either terminfo or termcap. d) src/s/freebsd.h defines LIBS_TERMCAP to -lncurses unless the system is before FreeBSD 4.0 e) src/Makefile.in uses machine.h (in this case derived from the previously-mentioned file). There's enough in the emacs sources to make it pretty clear that a failure to have emacs find the termcap functions would be a problem in the emacs port - emacs prefers -lncurses to -ltermcap unless it's being overridden. -- Thomas E. Dickey http://invisible-island.net ftp://invisible-island.net pgpMGBWQidJAa.pgp Description: PGP signature
Re: Updating emacs fails
It sounds to me like the right thing to do is to fix emacs' configuration so it always uses the base system ncurses whether or not the package version is there. Right? maybe/maybe not. It depends on what emacs needs - whether it only works with either its own termcap module or a conventional termcap library in the system. Probably its installation documentation tells what's needed. If you look at the build log I posted, it's failing because it's trying to link in the system termcap library and failing because ncurses doesn't provide it. Regards, John Levine, jo...@iecc.com, Primary Perpetrator of "The Internet for Dummies", Please consider the environment before reading this e-mail. http://jl.ly ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: Updating emacs fails
On Sun, Oct 23, 2011 at 11:23:36PM -, John Levine wrote: > >ncurses is already in the base system - with different options. ... > > >> Did you try installing the ncurses port and then rebuilding emacs? For > >> some reason the library in the ncurses port doesn't define the termcap > >> routines, leading to the problem. > > > >Whether or not the termcap routines are provided isn't configurable. > >However, emacs could be confused since they're implemented on top > >of terminfo. > > It sounds to me like the right thing to do is to fix emacs' configuration > so it always uses the base system ncurses whether or not the package > version is there. Right? maybe/maybe not. It depends on what emacs needs - whether it only works with either its own termcap module or a conventional termcap library in the system. Probably its installation documentation tells what's needed. -- Thomas E. Dickey http://invisible-island.net ftp://invisible-island.net pgpPtmhlvtCFe.pgp Description: PGP signature
Re: Updating emacs fails
>ncurses is already in the base system - with different options. ... >> Did you try installing the ncurses port and then rebuilding emacs? For >> some reason the library in the ncurses port doesn't define the termcap >> routines, leading to the problem. > >Whether or not the termcap routines are provided isn't configurable. >However, emacs could be confused since they're implemented on top >of terminfo. It sounds to me like the right thing to do is to fix emacs' configuration so it always uses the base system ncurses whether or not the package version is there. Right? R's, John ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: Updating emacs fails
On Sun, Oct 23, 2011 at 06:03:10PM +0200, John R. Levine wrote: > >>>On 23/10/2011 09:03, John R. Levine wrote: > > checking for tparm in -lncurses... no > > > >but that's not correct. libncurses should certainly contain that > >symbol. I get a 'yes' there on my stable/8 machine. As -lncurses is > >part of your LDFLAGS ... hmmm... do you have libncurses on your system > >anywhere other than in /lib ? > > I have the ncurses-5.9 package installed from ports. Several gnome > programs depend on it: > > pkg_delete: package 'ncurses-5.9' is required by these other packages > and may not be deinstalled: > aalib-1.4.r5_6 > gnome-games-2.32.1_2 > guile-1.8.8 > libcdio-0.82_2 > libxine-1.1.19_7 > >>> > >>>Interesting. Can you try moving /usr/local/lib/libncurses.* and > >>>/usr/local/include/ncurses.h aside temporarily and then rebuild emacs? > >>>If that works, then looks like you've found a bug in the editors/emacs > >>>port, which should be reported to the port's maintainer. > >> > >>Yup, that fixed it. I'll file a bug report. I tried rebuilding some > >>of the packages that allegedly depend on the ncurses port, and they > >>all seemed to work OK, so the right solution may be to deprecate the > >>ncurses port or fold it into the mainline system. ncurses is already in the base system - with different options. See http://invisible-island.net/ncurses/tctest.html for example. > >The way it's supposed to work is that emacs will depend on (and link to) > >ncurses if it's installed when the emacs port is built, and to the base > >system curses if not. I just did a quick test, and this was just what > >did happen. So at least part of the problem is local to your system... > > Did you try installing the ncurses port and then rebuilding emacs? For > some reason the library in the ncurses port doesn't define the termcap > routines, leading to the problem. Whether or not the termcap routines are provided isn't configurable. However, emacs could be confused since they're implemented on top of terminfo. -- Thomas E. Dickey http://invisible-island.net ftp://invisible-island.net pgpzC2ysp0ITv.pgp Description: PGP signature
Re: Updating emacs fails
On 23/10/2011 09:03, John R. Levine wrote: checking for tparm in -lncurses... no but that's not correct. libncurses should certainly contain that symbol. I get a 'yes' there on my stable/8 machine. As -lncurses is part of your LDFLAGS ... hmmm... do you have libncurses on your system anywhere other than in /lib ? I have the ncurses-5.9 package installed from ports. Several gnome programs depend on it: pkg_delete: package 'ncurses-5.9' is required by these other packages and may not be deinstalled: aalib-1.4.r5_6 gnome-games-2.32.1_2 guile-1.8.8 libcdio-0.82_2 libxine-1.1.19_7 Interesting. Can you try moving /usr/local/lib/libncurses.* and /usr/local/include/ncurses.h aside temporarily and then rebuild emacs? If that works, then looks like you've found a bug in the editors/emacs port, which should be reported to the port's maintainer. Yup, that fixed it. I'll file a bug report. I tried rebuilding some of the packages that allegedly depend on the ncurses port, and they all seemed to work OK, so the right solution may be to deprecate the ncurses port or fold it into the mainline system. The way it's supposed to work is that emacs will depend on (and link to) ncurses if it's installed when the emacs port is built, and to the base system curses if not. I just did a quick test, and this was just what did happen. So at least part of the problem is local to your system... Did you try installing the ncurses port and then rebuilding emacs? For some reason the library in the ncurses port doesn't define the termcap routines, leading to the problem. This computer has an extremely vanilla install of 8.2 with gnome. I'm having trouble figuring what I'm doing different from anyone else other than perhaps doing portupgrade more often than others do. Regards, John Levine, jo...@iecc.com, Primary Perpetrator of "The Internet for Dummies", Please consider the environment before reading this e-mail. http://jl.ly ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: Updating emacs fails
"John R. Levine" writes: >> On 23/10/2011 09:03, John R. Levine wrote: checking for tparm in -lncurses... no but that's not correct. libncurses should certainly contain that symbol. I get a 'yes' there on my stable/8 machine. As -lncurses is part of your LDFLAGS ... hmmm... do you have libncurses on your system anywhere other than in /lib ? >>> >>> I have the ncurses-5.9 package installed from ports. Several gnome >>> programs depend on it: >>> >>> pkg_delete: package 'ncurses-5.9' is required by these other packages >>> and may not be deinstalled: >>> aalib-1.4.r5_6 >>> gnome-games-2.32.1_2 >>> guile-1.8.8 >>> libcdio-0.82_2 >>> libxine-1.1.19_7 >> >> Interesting. Can you try moving /usr/local/lib/libncurses.* and >> /usr/local/include/ncurses.h aside temporarily and then rebuild emacs? >> If that works, then looks like you've found a bug in the editors/emacs >> port, which should be reported to the port's maintainer. > > Yup, that fixed it. I'll file a bug report. I tried rebuilding some > of the packages that allegedly depend on the ncurses port, and they > all seemed to work OK, so the right solution may be to deprecate the > ncurses port or fold it into the mainline system. The way it's supposed to work is that emacs will depend on (and link to) ncurses if it's installed when the emacs port is built, and to the base system curses if not. I just did a quick test, and this was just what did happen. So at least part of the problem is local to your system... ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: Updating emacs fails
On 23/10/2011 09:03, John R. Levine wrote: checking for tparm in -lncurses... no but that's not correct. libncurses should certainly contain that symbol. I get a 'yes' there on my stable/8 machine. As -lncurses is part of your LDFLAGS ... hmmm... do you have libncurses on your system anywhere other than in /lib ? I have the ncurses-5.9 package installed from ports. Several gnome programs depend on it: pkg_delete: package 'ncurses-5.9' is required by these other packages and may not be deinstalled: aalib-1.4.r5_6 gnome-games-2.32.1_2 guile-1.8.8 libcdio-0.82_2 libxine-1.1.19_7 Interesting. Can you try moving /usr/local/lib/libncurses.* and /usr/local/include/ncurses.h aside temporarily and then rebuild emacs? If that works, then looks like you've found a bug in the editors/emacs port, which should be reported to the port's maintainer. Yup, that fixed it. I'll file a bug report. I tried rebuilding some of the packages that allegedly depend on the ncurses port, and they all seemed to work OK, so the right solution may be to deprecate the ncurses port or fold it into the mainline system. Regards, John Levine, jo...@iecc.com, Primary Perpetrator of "The Internet for Dummies", Please consider the environment before reading this e-mail. http://jl.ly ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: Updating emacs fails
On 23/10/2011 08:11, John Levine wrote: >> anything useful that might help you to fix the problem. We'd need to see >> >> * Your choice of options for the port (ie. 'make showconfig' output) >> >> * A complete build log showing the problem occurring. (ie 'make >> clean build' output) >> >> * The config.log from $WRKSRC showing what autoconf did. > > I put them at http://www.taugh.com/emacsbuild.txt > > R's, > John Hmmm... your configure says: checking for tparm in -lncurses... no but that's not correct. libncurses should certainly contain that symbol. I get a 'yes' there on my stable/8 machine. As -lncurses is part of your LDFLAGS ... hmmm... do you have libncurses on your system anywhere other than in /lib ? Cheers, Matthew -- Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard Flat 3 PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate JID: matt...@infracaninophile.co.uk Kent, CT11 9PW signature.asc Description: OpenPGP digital signature
Re: Updating emacs fails
>anything useful that might help you to fix the problem. We'd need to see > > * Your choice of options for the port (ie. 'make showconfig' output) > > * A complete build log showing the problem occurring. (ie 'make > clean build' output) > > * The config.log from $WRKSRC showing what autoconf did. I put them at http://www.taugh.com/emacsbuild.txt R's, John ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"
Re: Updating emacs fails
On 22/10/2011 17:24, John Levine wrote: > For at least several weeks, attempts to rebuild emacs from ports fails > with an odd linker error saying it can't find symbols in the termcap > library. I poked around a little, the makefile does include the > appropriate library and adding it again at the end of the line in > the makefile didn't help. > > This is on 8.2, building it with no nonstandard options I'm aware of. No errors are on record for building editors/emacs according to pointyhat/portsmon: http://portsmon.freebsd.org/portoverview.py?category=editors&portname=emacs&wildcard= Therefore I diagnose something specific to your system is broken. Unfortunately your report is too lacking in detail to be able to say anything useful that might help you to fix the problem. We'd need to see * Your choice of options for the port (ie. 'make showconfig' output) * A complete build log showing the problem occurring. (ie 'make clean build' output) * The config.log from $WRKSRC showing what autoconf did. That should give a fighting chance of being able to work out what's wrong. Cheers, Matthew -- Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard Flat 3 PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate JID: matt...@infracaninophile.co.uk Kent, CT11 9PW signature.asc Description: OpenPGP digital signature
Updating emacs fails
For at least several weeks, attempts to rebuild emacs from ports fails with an odd linker error saying it can't find symbols in the termcap library. I poked around a little, the makefile does include the appropriate library and adding it again at the end of the line in the makefile didn't help. This is on 8.2, building it with no nonstandard options I'm aware of. Regards, John Levine, jo...@iecc.com, Primary Perpetrator of "The Internet for Dummies", Please consider the environment before reading this e-mail. http://jl.ly ___ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"