Ошибка консоли красного языка: 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 была решена.

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