talonvoice / beta

Issue tracker for the private Talon Beta
10 stars 0 forks source link

Linux: statically link bz2 in libw2l.so #40

Closed zarvox closed 4 years ago

zarvox commented 4 years ago

In the Linux beta (talon-linux-89-0.0.8.29-1196-g2d07a86), talon/lib/libw2l.so declares a dynamic dependency on libbz2.so.1.0. Hilariously, Fedora 31 provides version symlinks in /usr/lib64/ for libbz2.so and libbz2.so.1 pointing at libbz2.so.1.0.8, but has nothing for libbz2.so.1.0.

I've worked around this by adding a symlink talon/lib/libbz2.so.1.0 -> /usr/lib64/libbz2.so.

It might make sense to statically link libbz2 (and plausibly liblzma/libz too while you're there?) if you want libw2l.so to be a bit more hermetic. Alternately, if you prefer to use the system decompression libs, you could make the dep for libbz2 be just against the major version (libbz2.so.1) so it'll get found amongst the symlink farm in /usr/lib64 on Fedora.

lunixbochs commented 4 years ago

I think this is still broken in 1274, can you retest?

zarvox commented 4 years ago

Yeah, libw2l.so still dynamically links libbz2.so.1.0 in 1274 and 1276. The same workaround applies.

zarvox commented 4 years ago

This is fixed as of talon 1314, and run.sh now works out-of-the-box on Fedora. Thanks!