tmux:加载共享库时出错:libevent-2.0.so.5

tmux:加载共享库时出错:libevent-2.0.so.5

将 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

我通过以下方式获得了 tmuxGitHub 上的说明。它在 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

答案1

作为@guiverc评论 - 两者tmuxlibevent在 Ubuntu Bionic Beaver 18.04 LTS(及其他版本)上包装良好。

tmux您应该使用下列方法之一删除本地安装的版本:

  • 检查本地安装的版本tmux

    tmux -V # or from `man tmux`
    

    然后从 github 仓库克隆此版本,再次编译并运行

    sudo make uninstall
    
  • 只需删除自行安装tmux

    sudo rm $(which tmux)
    

    注意:运行sudo rm $(which tmux)看起来很安全,因为即使官方包尚未发布其他二进制文件或库

并从存储库安装包:

sudo apt-get install tmux

答案2

Bionic(18.04)下的 Tmux 需要比您提到的更高版本的 libevent(2.1)(https://packages.ubuntu.com/bionic/tmux)。我问“你的 tmux 在哪里,因为它与 bionic 版本的 tmux 不匹配”,注意到你的版本符合 xenial 的 tmux 的要求(https://packages.ubuntu.com/xenial/tmux)建议检查你的

apt-cache policy tmux

然后你告诉我你自己安装了它,这意味着你(可能不知不觉或者不知不觉地) 同意自己维护它,因为 apt 打包不知道它,因此无法维护和升级它。因此您需要自己管理升级(因为您没有安装自动维护版本)。

我认为你的两个主要选择是:-

(1)您需要重新编译您现有的安装(按照您第一次使用的文档中的说明,例如make; make install..),因为您之前的编译是针对 Ubuntu 16.04 而不是 18.04 完成的。

(2)删除它,然后使用常规工具安装 Ubuntu apt。这样做的好处是始终拥有自动安全更新,并且将在未来的版本升级中更新(即使这是 20.04)请参阅@N0rbert 的回答和帖子的评论,以获取有关删除的线索

[这些注释是已转换为答案的评论]

答案3

这解决了我的问题:

sudo apt install libevent-dev

答案4

对我来说,将 debian 9 升级到 debian 10 会导致此错误

安装libevent-2.1-6解决问题。

apt install libevent-2.1-6

之后输出如下ldd $(which tmux)

$ ldd $(which tmux)
linux-vdso.so.1 (0x00007ffe6435f000)
libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f0fca4c9000)
libutempter.so.0 => /usr/lib/x86_64-linux-gnu/libutempter.so.0 (0x00007f0fca2c6000)
libtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x00007f0fca297000)
libevent-2.1.so.6 => /usr/lib/x86_64-linux-gnu/libevent-2.1.so.6 (0x00007f0fca041000)
libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f0fca029000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f0fc9e66000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f0fc9e43000)
/lib64/ld-linux-x86-64.so.2 (0x00007f0fca57e000)

相关内容