如何解决Ubuntu 14.04编译make menuconfig时缺少’ncurses-devel’库[通俗易懂]

2022-09-05 14:39:42 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

今天在使用64位的Ubuntu 14.04系统编译linux源码的make menuconfig命令时,得到了一个错误的提示,说我没有安装相应的库:

代码语言:javascript复制
Unable to find the ncurses libraries or the required header files.
'make menuconfig' requires the ncurses libraries.

Install ncurses (ncurses-devel) and try again.

于是我按照上面的提示去安装ncurses-devel库(这里说明一下,ncurses库是字符终端下屏幕控制的基本库,可能很多新开发的程序都不使用了,不过如果要编译一些老程序,还经常用到):

代码语言:javascript复制
sudo apt-get install ncurses-devel

结果得到的提示是:

代码语言:javascript复制
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
E: 未发现软件包 ncurses-devel 

然后再试:

代码语言:javascript复制
sudo apt-get install ncurses

依然提示:

代码语言:javascript复制
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
现在没有可用的软件包 ncurses,但是它被其它的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃,
或者只能在其他发布源中找到
E: 软件包 ncurses 没有可供安装的候选者

看来事情没有那么简单。于是开始百度,CSDN一番查找,最终搞定!

原来Linux几乎每个发行版都会有’ncurses’及’ncurses-devel’的安装包的,但是不同版本的Ubuntu软件管理器服务端有做过修改。而对于Ubuntu 14.04以后的系统中,’ncurses-devel’是以’libncurses5-dev’命名的。所以,简而言之就是,这家伙依然存在,只是换了个名字而已!我们只需要将命令行修改一下即可!

下面把相关的命令整理如下:

代码语言:javascript复制
sudo apt-get install build-essential 
sudo apt-get install libncurses5 
sudo apt-get install libncurses5-dev 

上述3条命令中,对于大部分人,其实能起作用的应该只有最后一条,但是为了保险起见,建议大家都按顺序执行一遍,以免出错了重头再来。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/136805.html原文链接:https://javaforall.cn

0 人点赞