On Thu, 26 Jun 2014 07:55:58 +0200 Vincent Bernat <ber...@luffy.cx> wrote:
> ❦ 25 juin 2014 21:36 -0500, Robby Workman <ro...@rlworkman.net> : > > > Okay, looks like that's ncurses, so let's link ncurses too: > > > > [rworkman@liberty NetworkManager-0.9.9.98]$ gcc -o testrl > > -lreadline -lncurses testrl.c [rworkman@liberty > > NetworkManager-0.9.9.98]$ strings testrl | grep readline > > libreadline.so.6 readline > > readline > > > > Now, here's where I'm unclear. If I add LDFLAGS="-lnurses" to the > > configure environment, the test passes and the complete build > > occurs successfully. What's unclear is *why* that's needed -- is > > this an omission in the NM sources (isn't nmtui a curses client and > > thus ncurses should be linked?) or is something different about how > > we (Slackware) build readline? > > GNU readline requires linking to ncurses as well to get termcap > symbols. Here is an autoconf recipe for that: > http://www.gnu.org/software/autoconf-archive/ax_lib_readline.html If I'm reading that correctly, that snippet above tries to link in curses if it encounters failure, so perhaps NM should use it? Maybe not though - there's at least one other project (nftables) where I've encountered the same problem. While digging around a bit after sending this, I found that we add "--with-curses" to the readline configure to use it instead of libtermcap, so it's *supposed* to be linked in already and this would not be a problem. However, for whatever reason (it's not clear whether it's intentional or not), the upstream sources don't use TERMCAP_LIBS (set to "-lcurses" per the configure flag) when building the shared library. It appears that at least one distro solves that by running 'make SHLIB_LIBS="-lcurses"' when building, but I don't see where Fedora did that, so it's not clear at all how they link curses (or even if they do, when means I wonder how the configure test in OP works there). Assuming this is indeed a problem, it's been in Slackware for years without causing any actual issues - the readline library from 13.37 (released in April 2011) doesn't link ncurses either, so I'm not convinced that we're doing anything wrong (but I'm open to argument). -RW _______________________________________________ networkmanager-list mailing list networkmanager-list@gnome.org https://mail.gnome.org/mailman/listinfo/networkmanager-list