Ошибка консоли красного языка: libreadline.so.6: невозможно открыть общий объектный файл
Я новичок в красном языке программирования.
Я попытался проверить это, загрузив бинарный файл Linux. Но когда я выполняю его на консоли, я получаю сообщение об ошибке:
root@xxx-linux:/home/xxx/Downloads# ./red-042
Pre-compiling Red console...
/tmp/red/console: error while loading shared libraries:
libreadline.so.6: cannot open shared object file: No such file or directory
Я искал в Google эту ошибку, но ничего не смог найти.
Моя операционная система - 64-битная Linux Ubuntu 14.04 LTS
2 ответа
Мне удалось заставить его работать с помощью этой команды в Ubuntu, которая устанавливает 32-битную "multilib" версию libreadline
:
sudo apt-get install libreadline6:i386
Требуется 32-битная версия libreadline. Уже есть работа по замене этой зависимости здесь https://github.com/qtxie/red/tree/new-console но она еще не была объединена с главной.
Я также столкнулся с этой проблемой после обновления до 64-битной Ubuntu 18.04, и, потратив некоторое время на изучение проблемы, я обнаружил, что после обновления пакет libreadline отсутствовал, поэтому я установил пакет libreadline, используя
sudo apt-get install libreadline-dev
Но это тоже не решило мою проблему. Затем я понял, что он установил обновленную версию пакета libreadline, то есть libreadline.so.7.0. В качестве обходного пути я создал его символическую ссылку, чтобы продолжить работу с libreadline.so.6.
$ cd /lib/x86_64-linux-gnu/
$ sudo ln -s libreadline.so.7.0 libreadline.so.6
И это творило чудеса, и моя проблема с пакетом libreadline была решена.