My GNU/Linux system (Arch) now has libncurses.so.6 rather than libncurses.so.5. But I have upstream's vanilla TeX Live (fully updated) and xindy wants libncurses.so.5:
xindy --version
produces the following error
xindy release: 2.5.1
xindy script version: 1.18
/usr/local/texlive/bin/xindy.run: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
And ldd can confirm the problem:
ldd /usr/local/texlive/bin/xindy.run
gives
linux-vdso.so.1 (0x00007ffc07997000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007fab4d1b1000)
libcrypt.so.1 => /usr/lib/libcrypt.so.1 (0x00007fab4cf79000)
libncurses.so.5 => not found
libdl.so.2 => /usr/lib/libdl.so.2 (0x00007fab4cd75000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007fab4c9d1000)
/lib64/ld-linux-x86-64.so.2 (0x00007fab4d4af000)
How can I use xindy without changing my operating system, while using vanilla TeX Live?
2 strategies have occurred to me:
compile
xindyfrom sources againstlibncurses.so.6;compile and install
libncurses.so.5alongsidelibncurses.so.6.
Option (2) can be dodgy or can be fine, depending on the details. My suspicion is it may be dodgy for this library, simply because no packages are available for the old version of the library, which might mean there are problems having both installed. Moreover, since everything else is compiled against the new version, I'm not sure whether this would be enough for xindy anyway.
Option (1) I have no idea about. I don't know if this is even vaguely doable or, in fact, where the sources are or what might be required to compile them. (I don't suppose there's any chance a pre-compiled binary is available somewhere? But that is probably hoping for too much ;).)
What is the most practicable approach?