答案1
Libncurses 最近从 更新/usr/lib32/libncursesw.so.5
为/usr/lib32/libncursesw.so.6
。本来应该有一个匹配的 bash 更新,但你没有。
事实上,我刚刚在自己身上发现了这一点pacman.log
:
[2015-09-19 23:45] [ALPM] upgraded ncurses (5.9-7 -> 6.0-3)
[2015-09-19 23:45] [ALPM] upgraded readline (6.3.008-1 -> 6.3.008-3)
[2015-09-19 23:45] [ALPM-SCRIPTLET] /usr/bin/bash: error while loading shared libraries: libncursesw.so.5: cannot open shared object file: No such file or directory
[2015-09-19 23:45] [ALPM] upgraded bash (4.3.042-1 -> 4.3.042-3)
这就是为什么您应该更新所有内容或不更新任何内容。
您应该获取 LiveCD,安装驱动器,然后执行更新,如下所示:
pacman --root=/path/to/mounted/root -Suy
答案2
在进行完整的系统升级后,我遇到了完全相同的问题。
按照“ams”所述使用 pacman --root=/mnt -Syu 安装更新并没有解决我的问题;相反,我必须对库进行符号链接,即
cd /usr/lib
ln -s libncursesw.so.6 libncursesw.so.5
但是,执行此操作后,我无法运行 gnome-terminal (我有这个问题:gnome 终端停止工作)。不过,这可能与 ncurses 问题无关。