我已在默认环境中通过tmux
安装和更新了emacs
和conda
,并且在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
但是,当尝试启动tmux
或emacs
时,出现此错误:
error while loading shared libraries: libtinfo.so.6: cannot open shared object file: No such file or directory
每个error while loading shared libraries: libgsl.so.0: cannot open shared object file: No such file or directory我有5个libtinfo
文件:
(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
答案 0 :(得分:1)
您可能需要一个软件包libncurses6。搜索该库时,应查找文件
find / -name "libtinfo.so*" -ls
文件libtinfo.so
仅在创建可执行文件时使用,通常是指向实际库的符号链接。不需要运行程序。文件“ libtinfo.so.6”通常也是指向实际库的符号链接。在我的系统上,是
/lib64/libtinfo.so.6 -> libtinfo.so.6.1
由于tmux和emacs是系统实用程序,不可能使用它们的不同版本,为什么不将它们安装在没有conda的基本系统中?
答案 1 :(得分:0)
相同的问题。解决了以下问题:
$ 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 's@libtinfo.so$@libtinfo.so.6@'`
$ find . -name "libtinfo*"
...
./lib/libtinfo.so # original lib
./lib/libtinfo.so.6 # the new one which is a symlink
...
$ ./bin/tmux
(ok)
为什么需要这样做-当我无法访问快速的按需包部署(以及root / sudi,当然),但仍需要类似screen
的解决方案。