Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > gnu.bash.bug > #14817 > unrolled thread

RE: bash will not link against ncursesw and readline in /usr/local

Started byJohn Frankish <john.frankish@outlook.com>
First post2018-11-14 06:07 +0000
Last post2018-11-14 06:07 +0000
Articles 1 — 1 participant

Back to article view | Back to gnu.bash.bug

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  RE: bash will not link against ncursesw and readline in /usr/local John Frankish <john.frankish@outlook.com> - 2018-11-14 06:07 +0000

#14817 — RE: bash will not link against ncursesw and readline in /usr/local

FromJohn Frankish <john.frankish@outlook.com>
Date2018-11-14 06:07 +0000
SubjectRE: bash will not link against ncursesw and readline in /usr/local
Message-ID<mailman.4015.1542175690.1284.bug-bash@gnu.org>
> > Using bash-4.4.18
> > Intel core i7 laptop running 32-bit or 64-bit linux Using gcc-8.2.0
> > 
> > The configure script does not find libncursesw on a system where
> > only the wide version of ncurses exists  - even when readine is linked against ncursesw.
> >
> I haven't seen a distro where ncursesw is installed without a link to ncurses.
> Which distribution are you using?
> 
The 64-bit version of tinycorelinux - all non-base packages are installed to /usr/local.
Since ncursesw is now the default, I'm trying to compile against that.

> I could add a check for ncursesw, but that's the kind of thing the distro usually does.
>
If ncursesw is now the default, maybe it would make sense to check for that rather than a symlink?

> > The configure scripts does not find libreadline when it is compiled to
> > /usr/local and when using the configure switch "--with-installed-readline=/usr/local"
> > 
> I don't have any trouble finding readline in /usr/local/lib/libreadline.so after
> installing it, editing /etc/ld.so.conf, and running ldconfig. I tried with readline-8.0-beta
> and bash-5.0-beta, so at least it will be working when those hit release status.
>
It appears that the readline check relies on the ncurses check being successful.

If I configure without an ncurses symlink the check for readline fails.

If I add an ncurses symlink the check for readline succeeds.

checking for tgetent... no
checking for tgetent in -ltermcap... no
checking for tgetent in -ltinfo... no
checking for tgetent in -lcurses... no
checking for tgetent in -lncurses... no
checking which library has the termcap functions... using gnutermcap
checking version of installed readline library... configure: WARNING: Could not test version of installed readline library.
configure: WARNING: installed readline library is too old to be linked with bash
configure: WARNING: using private bash version

configure:5194: result: no
configure:5213: checking which library has the termcap functions
configure:5216: result: using gnutermcap
configure:5242: checking version of installed readline library
configure:5296: gcc -flto -fuse-linker-plugin -mtune=generic -Os -pipe -o conftest -g -O2 -Wno-parentheses -Wno-format-security -I/usr/local/include   -L./lib/termcap -L/usr/local/lib conftest.c  -lreadline ./lib/termcap/libtermcap.a >&5
gcc: error: ./lib/termcap/libtermcap.a: No such file or directory

$ cd /usr/local/lib
$ sudo ln -s libncursesw.so.6.1 libncurses.so
$ sudo ldconfig

checking for tgetent... no
checking for tgetent in -ltermcap... no
checking for tgetent in -ltinfo... no
checking for tgetent in -lcurses... no
checking for tgetent in -lncurses... yes
checking which library has the termcap functions... using libncurses
checking version of installed readline library... 7.0

[toc] | [standalone]


Back to top | Article view | gnu.bash.bug


csiph-web