在将ubuntu 16升级到18之后,我在执行tmux时得到了这个错误:
tmux:加载共享库时出错: libevent-2.0.so.5:无法打开共享对象文件:没有这样的文件或目录
当我执行ldd $(which tmux)时,结果如下:
linux-vdso.so.1 (0x00007ffd9878a000)
libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f5588dfc000)
libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f5588bd2000)
libevent-2.0.so.5 => not found
libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f55889b7000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f55885c6000)
/lib64/ld-linux-x86-64.so.2 (0x00007f5588fff000我通过跟踪关于GitHub的说明获得tmux。它在Ubuntu 16上工作。
$ apt-cache policy tmux
Installed: (none)
Candidate: 2.6-3
Version table:
2.6-3 500
500 http://id.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
100 /var/lib/dpkg/status发布于 2018-05-09 09:49:55
正如@guiverc所评论的,tmux和libevent都在Ubuntu 18.04LTS(和其他版本)上打包得很好。
应该使用以下方法之一删除本地安装的tmux:
tmux:tmux -V #或man tmux版本,然后从其github存储库克隆此版本,再次编译该版本,然后运行sudo make卸载。tmux,注意:运行sudo rm $(which tmux)看起来很安全,因为即使是官方包没有提供其他二进制文件或库。。并从存储库安装包:
sudo apt-get install tmux发布于 2018-05-09 12:47:31
Bionic (18.04)下的Tmux需要比您提到的(https://packages.ubuntu.com/bionic/tmux)更晚的libevent (2.1)版本。我问“您的tmux是从哪里得到的,因为它与tmux的仿生版本不匹配”,注意到您的版本确实符合xenial的tmux (https://packages.ubuntu.com/xenial/tmux)的要求,建议检查
apt-cache policy tmux然后你告诉我你自己安装了它,这意味着你(可能是不知情或不知情的)同意自己维护它,因为apt封装不知道它&因此无法维护-升级它。因此,您需要自己管理升级(因为您没有安装自动维护的版本)。
你的两个主要选择是:-
(1)您需要重新编译您现有的安装(按照您第一次使用的文档中的说明,例如。make; make install..),之前的编译是为Ubuntu16.04完成的,而不是18.04。
(2)删除它,并使用普通的apt工具安装Ubuntu。这有一个优点,就是总是有自动的安全更新,再加上将在以后的版本升级中更新(即使这是20.04),请参阅@N0rbert的答案&线程的注释,以获得删除的线索。
发布于 2019-07-17 15:12:30
这解决了我的问题:
sudo apt install libevent-devhttps://askubuntu.com/questions/1033832
复制相似问题