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

Я получил tmux, следуя инструкциям на GitHub . Он работал на 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
5
задан 9 May 2018 в 13:10

5 ответов

Поскольку @guiverc прокомментировал - оба tmux и libevent хорошо упаковываются на Ubuntu Бионический Бобр 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
6
ответ дан 23 November 2019 в 08:54

Tmux под Бионическим (18.04) требует более поздней версии libevent (2.1), чем Вы упоминаете (https://packages.ubuntu.com/bionic/tmux). Я спросил, "где Вы получали свой tmux, поскольку он не соответствует бионической версии tmux" замечание, что Ваша версия действительно соответствует требованиям для tmux xenial (https://packages.ubuntu.com/xenial/tmux) предлагающий проверку Ваш

apt-cache policy tmux

Вы затем сказали мне об установке его сами, подразумевая, что Вы (возможно невольно или невольно) согласились поддержать его сами, поскольку способная упаковка не знает об этом, и таким образом не может поддерживать-обновление он. Таким образом необходимо справиться с обновлениями сами (поскольку Вы не устанавливали автосохраняемую версию).

Вашими двумя основными вариантами, которые я вижу, является:-

(1) необходимо перекомпилировать для существующей установки (следующий инструкциям в зарегистрированном, Вы использовали первый раз, например. make; make install..) поскольку Ваша предшествующая компиляция была сделана для Ubuntu 16.04 а не 18.04.

(2) удалите его и установите Ubuntu одно нормальное использование apt инструменты. Это имеет преимущество всегда наличия автоматических обновлений системы защиты, плюс будет обновлен в будущих обновлениях версии (даже если это будет 20.04), См. ответ @N0rbert и комментарии потока для подсказок относительно удаления

[эти примечания были комментариями, преобразованными в ответ]

2
ответ дан 23 November 2019 в 08:54

Это решило мою проблему:

sudo apt install libevent-dev
1
ответ дан 23 November 2019 в 08:54

Только что обновился до Ubuntu 20, и лучшим вариантом для меня была компиляция из исходного кода.

Исходники находятся на GitHub: https://github.com/tmate-io/tmate

Загрузите, скомпилируйте и установите, выполнив следующие действия:

git clone https://github.com/tmate-io/tmate.git
cd tmate
./autogen.sh
./configure
make
make install

Необходимо несколько зависимостей. Имена пакетов Ubuntu: git-core build-essential pkg-config libtool libevent-dev libncurses-dev zlib1g-dev automake libssh-dev libmsgpack-dev

Официальную документацию можно найти здесь: https://tmate.io/

0
ответ дан 1 May 2020 в 10:43

Для меня обновление с debian 9 до debian 10 вызывает эту ошибку

Установка libevent-2.1-6 решает проблему.

apt install libevent-2.1-6

После этого здесь вывод ldd $(который 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)
0
ответ дан 18 January 2021 в 15:08

Другие вопросы по тегам:

Похожие вопросы: