Tiny Core Extensions > TCE Bugs

readline undefined symbol

(1/3) > >>

polikuo:
TC 12.0 x86_64

/usr/local/bin/awk from gawk.tcz reports


--- Code: ---$ printf '\tTAB' | /use/local/bin/awk '/\t/'
symbol lookup error: /usr/local/lib/libreadline.so.8: undefined symbol: UP
--- End code ---

Rich:
Hi polikuo
Does this show anything missing:

--- Code: ---ldd /usr/local/lib/libreadline.so.8
--- End code ---

polikuo:
Not really

Here are some tests


--- Code: ---tc@box: ~ $ ldd /usr/local/lib/libreadline.so.8
        linux-vdso.so.1 (0x00007ffe2f1c1000)
        libc.so.6 => /lib/libc.so.6 (0x00007fa07e9f5000)
        /lib/ld-linux-x86-64.so.2 (0x00007fa07ebe0000)
tc@box: ~ $ /lib/ld-linux-x86-64.so.2 --verify /usr/local/lib/libreadline.so.8
tc@box: ~ $ echo $?
2
tc@box: ~ $ ldd /usr/lib/libc.so
/usr/lib/libc.so: error while loading shared libraries: /usr/lib/libc.so: invalid ELF header
tc@box: ~ $ /lib/ld-linux-x86-64.so.2 --verify /usr/lib/libc.so
tc@box: ~ $ echo $?
1
tc@box: ~ $ ldd /lib/libc.so.6
        /lib/ld-linux-x86-64.so.2 (0x00007f1e918e3000)
        linux-vdso.so.1 (0x00007ffcb71fb000)
tc@box: ~ $ /lib/ld-linux-x86-64.so.2 --verify /lib/libc.so.6
tc@box: ~ $ echo $?
0
tc@box: ~ $ ldd /usr/local/bin/awk
        linux-vdso.so.1 (0x00007fffd0335000)
        libreadline.so.8 => /usr/local/lib/libreadline.so.8 (0x00007f880aa4e000)
        libmpfr.so.6 => /usr/local/lib/libmpfr.so.6 (0x00007f880a79f000)
        libgmp.so.10 => /usr/local/lib/libgmp.so.10 (0x00007f880a71d000)
        libdl.so.2 => /lib/libdl.so.2 (0x00007f880a718000)
        libm.so.6 => /lib/libm.so.6 (0x00007f880a5f4000)
        libc.so.6 => /lib/libc.so.6 (0x00007f880a470000)
        /lib/ld-linux-x86-64.so.2 (0x00007f880aab5000)
tc@box: ~ $ /lib/ld-linux-x86-64.so.2 --verify /usr/local/bin/awk
tc@box: ~ $ echo $?
0
tc@box: ~ $ nm /usr/local/lib/libreadline.so.8 | grep UP
                 U UP
--- End code ---

Juanito:
Hmm - normally readline should depend on ncursesw - I'll take a look tomorrow.

Rich:
Hi polikuo

--- Quote from: polikuo on April 04, 2021, 12:05:45 PM --- ...
--- Code: ---tc@box: ~ $ ldd /usr/lib/libc.so
/usr/lib/libc.so: error while loading shared libraries: /usr/lib/libc.so: invalid ELF header
--- End code ---
...
--- End quote ---
The  libc.so  library tends to be very stable and rarely changes since everything (including the kernel) depends on it. So
seeing another  libc.so  in  /usr/lib/  struck me as odd. Turns out it is provided by  glibc_base-dev.tcz  and is not a shared
library at all. It appears to contain directives for the linker. Run this and see for yourself:

--- Code: ---cat /usr/lib/libc.so
--- End code ---



--- Quote --- ...
--- Code: ---tc@box: ~ $ nm /usr/local/lib/libreadline.so.8 | grep UP
                 U UP
--- End code ---

--- End quote ---
The  U  means that symbol  UP  is undefined and is expected to be found in an external executable (dependency).
I see  UP  defined in  libncursesw.so.

Navigation

[0] Message Index

[#] Next page

Go to full version