Hi Joakim >>>Yes, but probably doesn't link with it? >>>do a readelf -d libreadline.so.6, see ncurses it listed in NEEDED: >>>0x00000001 (NEEDED) Shared library: [libncurses.so.5] >>>0x00000001 (NEEDED) Shared library: [libc.so.6]
Thanks for the example....dare I say you've hit the proverbial nail? Only difference when compared to your example is....my "libreadline" doesn't even know about "libncurses"? libreadline: [root@dlxarm01 buildroot]# readelf -d ./output/target/usr/lib/libreadline.so.6.1 | grep "]" 0x00000001 (NEEDED) Shared library: [libc.so.0] 0x0000000e (SONAME) Library soname: [libreadline.so.6] 0x0000000f (RPATH) Library rpath: [/usr/lib] [root@dlxarm01 buildroot]# Python's lib-dynload/libreadline.so: [root@dlxarm01 buildroot]# readelf -d ./output/target/usr/lib/python2.7/lib-dynload/readline.so | grep "]" 0x00000001 (NEEDED) Shared library: [libreadline.so.6] 0x00000001 (NEEDED) Shared library: [libncurses.so.5] 0x00000001 (NEEDED) Shared library: [libc.so.0] [root@dlxarm01 buildroot]# libncurses: [root@dlxarm01 buildroot]# readelf -d ./output/target/usr/lib/libncurses.so | grep "]" 0x00000001 (NEEDED) Shared library: [libc.so.0] 0x0000000e (SONAME) Library soname: [libncurses.so.5] [root@dlxarm01 buildroot]# I checked my linux laptop (Fedora 13): [bruce@laptop ~]$ readelf -d /lib64/libreadline.so.6.1 | grep "]" 0x0000000000000001 (NEEDED) Shared library: [libtinfo.so.5] <----- I think this is correct 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] 0x000000000000000e (SONAME) Library soname: [libreadline.so.6] [bruce@laptop ~]$ So ....if I understand things correctly ......"readelf -d ./output/target/usr/lib/libncurses.so" shows that "readline" is not linking properly when compiled....even though "ncurses" was defined as a dependency or if I manually build/install ncurses first. @Peter: Thanks for the linking options, would I be able to implement them using a patch? What file would I patch....the "readline" Makefile? Thanks again to everybody for the help! Bruce On Wed, Mar 23, 2011 at 8:07 PM, Joakim Tjernlund < [email protected]> wrote: > bruce bushby <[email protected]> wrote on 2011/03/23 20:19:06: > > > > Over the past two weeks I've tried many variations, unfortunately without > any success. > > > > I've tried building on these platforms: > > Fedora 12 > > Fedora 14 > > Ubuntu Natty 11.04 > > > > Buildoot: > > buildroot-dailysnapshot > > buildroot-2011-02 > > > > uclibc: > > 0.9.31 > > 0.9.32-rc2 > > > > Building "readline" without "ncurses" and with the dependency on > "ncurses" removed: > > [root@dlxarm01 buildroot]# grep -i tgetent > make-readline-without-ncurses.log > > 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 > > [root@dlxarm01 buildroot]# > > > > BUT....readline still compiles.....this could be due to the fact that I > am unable to run "autoreconf" when building "readline"? > > > > I then run "make ncurses" and then re-run "make readline" to see if it's > uses "ncurses" for "tgetent": > > [root@dlxarm01 buildroot]# grep -i tgetent > make-readline-with-ncurses.log > > checking for tgetent... no > > checking for tgetent in -ltermcap... no > > checking for tgetent in -ltinfo... no > > checking for tgetent in -lcurses... yes > > [root@dlxarm01 buildroot]# > > > > So "readline" does find "ncurses". > > Yes, but probably doesn't link with it? > do a readelf -d libreadline.so.6, see ncurses it listed in NEEDED: > 0x00000001 (NEEDED) Shared library: [libncurses.so.5] > 0x00000001 (NEEDED) Shared library: [libc.so.6] > > > > > My Fedora 12 X64 desktop uses "termcap" rather then "ncurses": > > [bruce@core readline-6.2]$ ./configure | grep -i tgetent > > checking for tgetent... no > > checking for tgetent in -ltermcap... yes > > [bruce@core readline-6.2]$ > > > > I will try and add "readelf" to my build and forward the results of > checking "libreadline" and "libncurses" > > > > I really appreciate the help! > > > > I've been stuck for so long now I thought of offering a $200.00 reward to > anybody who can fix it. > > > > Bruce > > > > On Wed, Mar 23, 2011 at 6:15 PM, Joakim Tjernlund < > [email protected]> wrote: > > [email protected] wrote on 2011/03/23 18:57:04: > > > > > > On Wed, Mar 23, 2011 at 1:19 PM, Joakim Tjernlund wrote: > > > > From: Salvatore CRO <[email protected]> > > > >> We have been looking at the same problem in the last days... > > > >> Libreadline needs either libncurses or libtermcap to provide these > symbols. > > > >> Even though one of the two is supposed to be linked to libreadline > (depending on > > > >> Certain logic in its build configure), it seems this is not actual > the case. > > > >> We'll keep investigating into libreadline package configure. > > > > > > > > Unless someone changed this, uClibc needs to have either > > > > libncurses or libtermcap linked to readline(needs to be in > > > > readline's NEEDED list) or uClibc will fail. glibc doesn't require > this, but I believe the specs says that all deps should be listed. > > > > > > i'm pretty sure that's the intended behavior we still have. i wonder > > > if we should FAQ this ... > > > -mike > > > Yes, since this is not the first time this problem has happened. > > > > Jocke > > _______________________________________________ uClibc mailing list [email protected] http://lists.busybox.net/mailman/listinfo/uclibc
