После обновления 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
Поскольку @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
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 и комментарии потока для подсказок относительно удаления
[эти примечания были комментариями, преобразованными в ответ]
Это решило мою проблему:
sudo apt install libevent-dev
Только что обновился до 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/
Для меня обновление с 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)