Page 1 of 1

Incorrect lib linking? Twonky Server 8.5.1, Linux Arm EL (workaround)

Posted: Mon Jun 25, 2018 4:32 pm
by Busywait
I have downloaded and installed the generic Linux ARM Little Endian build from the Twonky download site http://download.twonky.com/, version 8.5.1, Linux ARM little endian uclibc 0.9.28

It expects to find 3 libraries, but expects unusual version numbers for two of the libraries:

Code: Select all

$ ldd twonky851/twonkystarter
        libpthread.so.1 => not found
        libc.so.1 => not found
        ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0xb6fc7000)
$ ldd twonky851/twonkyserver
        libpthread.so.1 => not found
        libc.so.1 => not found
        ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0xb6fcd000)
I am running firmware on my NAS has the following versions of those .so files in /lib:

Code: Select all

$ ls -l /lib/libpthre* /lib/libc.* /lib/libc-* /lib/libuC*
ls: /lib/libc-*: No such file or directory
lrwxrwxrwx    1 root     root            21 Sep 22  2017 /lib/libc.so.0 -> libuClibc-0.9.30.3.so
-rwxr-xr-x    1 root     root         83879 Oct 13  2017 /lib/libpthread-0.9.30.3.so
lrwxrwxrwx    1 root     root            22 Sep 22  2017 /lib/libpthread.so.0 -> libpthread-0.9.30.3.so
-rwxr-xr-x    1 root     root        343156 Oct 13  2017 /lib/libuClibc-0.9.30.3.so
So, when I try to run twonkystarter it fails to start with an error:
Missing .so.1 file reported
$ ./twonky851/twonkystarter -logfile ./twonkyserver-log.txt -appdata ./appdata
./twonky851/twonkystarter: can't load library 'libpthread.so.1'

I can add these missing symlinks as root:

Code: Select all

# ln -s /lib/libpthread-0.9.30.3.so /lib/libpthread.so.1
Then:
$ ./twonky851/twonkystarter
./twonky851/twonkystarter: can't load library 'libc.so.1'

As root:

Code: Select all

# ln -s /lib/libuClibc-0.9.30.3.so /lib/libc.so.1
Now twonky server works as expected.

Is this a little mistake in the Linux Arm EL build?