I've installed and updated tmux
and emacs
via conda
in my default environment, and have these versions in conda list
:
# packages in environment at /home/maxghenis/miniconda3:
#
# Name Version Build Channel
tmux 2.7 hc78d2af_1 conda-forge
emacs 26.1 h3a2ea38_1 conda-forge
Yet when trying to start either tmux
or emacs
, I get this error:
error while loading shared libraries: libtinfo.so.6: cannot open shared object file: No such file or directory
Per error while loading shared libraries: libgsl.so.0: cannot open shared object file: No such file or directory I have 5 libtinfo
files:
(xenial)maxghenis@localhost:~$ sudo find / -name "libtinfo.so"
/home/maxghenis/miniconda3/pkgs/ncurses-5.9-10/lib/libtinfo.so
/home/maxghenis/miniconda3/pkgs/ncurses-6.1-hf484d3e_0/lib/libtinfo.so
/home/maxghenis/miniconda3/envs/tidycensus/lib/libtinfo.so
/home/maxghenis/miniconda3/lib/libtinfo.so
(xenial)maxghenis@localhost:/lib$ sudo find / -name "libtinfo.so.6"
/lib64/libtinfo.so.6
Same issue. The following has worked out:
$ pwd
<anaconda_installation_dir>
$ ./bin/tmux
(error)
$ find . -name "libtinfo*"
...
./lib/libtinfo.so # this is the needed shared lib shipped deployed by conda, just need it been found
...
$ ln -s `readlink -f ./lib/libtinfo.so` `readlink -f ./lib/libtinfo.so | sed '[email protected][email protected]@'`
$ find . -name "libtinfo*"
...
./lib/libtinfo.so # original lib
./lib/libtinfo.so.6 # the new one which is a symlink
...
$ ./bin/tmux
(ok)
As to why this may be desired -- my case is working in a sort of administratively "hostile" environment when I don't have access to fast on-demand package deployment (as well as root/sudi as well, of course) but still need screen
-like solution.
You may need a package libncurses6. When you search for the library, you should look for files
find / -name "libtinfo.so*" -ls
The file libtinfo.so
is only used when creating an executable, and is typically a symlink to the actual library. It is not needed to run a program. The file "libtinfo.so.6" is also often a symlink to the actual library. On my system, it is
/lib64/libtinfo.so.6 -> libtinfo.so.6.1
As tmux and emacs are system utilities and it's not likely that you want to use different versions of them, why don't you install them in the base system without conda?
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With