我是Red编程语言的新手。
我尝试通过下载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
答案 0 :(得分:9)
我成功地在Ubuntu上使用此命令使其工作,Ubuntu安装了libreadline
的32位“multilib”版本:
sudo apt-get install libreadline6:i386
答案 1 :(得分:3)
需要32位版本的libreadline。已经有工作要在这里替换这个依赖https://github.com/qtxie/red/tree/new-console,但它还没有合并到主服务器上。
答案 2 :(得分:0)
在升级到64位Ubuntu 18.04之后,我也遇到了这个问题,花了一些时间研究这个问题后,我发现升级后缺少libreadline软件包,所以我使用以下方式安装了libreadline软件包
# own logger
logger = logging.getLogger() # no name -> logger = root logger
file_handler = logging.handlers.TimedRotatingFileHandler('flask.log', when='D', interval=1)
email_handler = SMTPHandler(...)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
logger.setLevel(logging.DEBUG)
file_handler.setLevel(logging.DEBUG)
email_handler.setLevel(logging.WARNING)
file_handler.setFormatter(formatter)
email_handler.setFormatter(formatter)
logger.addHandler(file_handler)
logger.addHandler(email_handler)
但这还不能解决我的问题。然后我发现它安装了libreadline软件包的升级版本,即libreadline.so.7.0。作为解决方法,我创建了它的符号链接,以便可以继续使用libreadline.so.6进行工作。
sudo apt-get install libreadline-dev
这奏效了,我的libreadline包问题解决了。