Tiny Core Extensions > TCE Bugs

Missing dep and extra dep in zstd.tcz.dep for x86_64

(1/1)

CNK:
"zstd" from zstd.tcz won't run without loading liblz4.tcz. liblz4.tcz is in zstd.tcz.dep on x86, but not on x86_64.

Also counter-intuitively libzstd.tcz isn't required by "zstd" on x86_64 even though it's in zstd.tcz.dep. "zstd" is the only binary in zstd.tcz (other executables are shell scripts) and it runs fine (compressing and decompressing in Zstandard format) without it.

This is backed up by the output of ldd:

--- Code: ---$ ldd `which zstd`
        linux-vdso.so.1 (0x00007fff59ff2000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00007f77e83db000)
        liblzma.so.5 => /usr/local/lib/liblzma.so.5 (0x00007f77e83b9000)
        liblz4.so.1 => /usr/local/lib/liblz4.so.1 (0x00007f77e83a0000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007f77e839b000)
        libc.so.6 => /lib/libc.so.6 (0x00007f77e81df000)
        /lib/ld-linux-x86-64.so.2 (0x00007f77e83fa000)

--- End code ---

The following zstd.tcz.dep works correctly:

--- Code: ---liblz4.tcz
liblzma.tcz

--- End code ---

But I wonder whether this was a build mistake and zstd was supposed to be linked against libzstd.so? That would save space on my system because libzstd.tcz is a dependency of another extension that I load.

Juanito:
zstd should have been linked to libzstd - I’m busy at the moment, but I’ll fix it in a couple of weeks.

Juanito:
In the end I had to use cmake to get zstd to link against libzstd dynamically - posted in tc-14.x x86_64 repo.

Juanito:
..and 14.x x86 repo

CNK:
Thanks Juanito!

Navigation

[0] Message Index

Go to full version