Ubuntu 24.04系统下安装libncurses.so.5的方法及编译可行性咨询
Ubuntu 24.04系统下安装libncurses.so.5的方法及编译可行性咨询
你遇到的这个问题在Ubuntu 24.04里挺常见的,毕竟系统默认搭载的是ncurses 6.x版本,而你用的arm-none-eabi-gdb依赖的是老版本的libncurses.so.5。下面给你详细的解决办法,以及关于自行编译的可行性分析:
一、通过APT包管理器快速安装(推荐优先尝试)
Ubuntu 24.04的软件仓库里其实还保留了libncurses5包,直接通过以下步骤就能安装:
- 先更新本地软件源缓存,确保能找到最新的包信息:
sudo apt update - 根据你的系统架构安装对应版本:
- 64位系统(大多数场景):
sudo apt install libncurses5 - 若需要32位版本的依赖(适配部分旧工具):
sudo apt install libncurses5:i386
- 64位系统(大多数场景):
安装完成后,可以用ldconfig -p | grep libncurses.so.5命令验证库是否成功添加到系统缓存。
二、临时软链接方案(应急用,不推荐长期依赖)
如果上面的安装方法意外失效,你可以尝试将系统已有的ncurses 6.x库链接为5版本——这只是临时应急手段,可能引发其他工具的兼容性问题,谨慎使用:
- 先确认系统中libncurses.so.6的位置:
find /lib -name "libncurses.so.6" - 64位系统的默认路径一般是
/lib/x86_64-linux-gnu/libncurses.so.6,执行软链接命令:sudo ln -s /lib/x86_64-linux-gnu/libncurses.so.6 /lib/x86_64-linux-gnu/libncurses.so.5
三、自行编译libncurses 5.x的可行性及步骤
当然可以自己在Ubuntu 24.04上编译libncurses.so.5,步骤也不复杂:
- 先安装编译必备的工具链:
sudo apt install build-essential - 下载ncurses 5.x系列的源码包(比如经典的5.9版本),解压后进入源码目录:
tar xzf ncurses-5.9.tar.gz cd ncurses-5.9 - 配置编译参数,指定安装路径并生成共享库:
./configure --prefix=/usr/local --with-shared - 编译并安装到系统:
make sudo make install - 最后更新系统库缓存,让新编译的库生效:
sudo ldconfig
编译完成后,你就能在/usr/local/lib目录下找到libncurses.so.5文件了。
备注:内容来源于stack exchange,提问作者Newton Nadar




