ubuntu make menuconfig error

主机环境:
ubuntu

--------------------------------------------------------------

在ubuntu系统中,要编译内核,还需要安装一系列相应的工具才行。这篇文章,正是针对这一过程的一次记录,目标是可以通过 make menuconfig 或 make xconfig 配置内核参数

--------------------------------------------------------------
参考
apt用法参考 《 UbuntuHelp:AptGet/Howto 》
内核编译参考 《  配置并编译内核[更新到linux-2.6.26.2] 》
           《 Master Kernel Thread 》

--------------------------------------------------------------
我的做法是从make menuconfig开始

$make menuconfig
错误信息:

 *** Unable to find the ncurses libraries or the
 *** required header files.
 *** 'make menuconfig' requires the ncurses libraries.
 ***
 *** Install ncurses (ncurses-devel) and try again.
 ***
make[1]: *** [scripts/kconfig/dochecklxdialog] 错误 1
make: *** [menuconfig] 错误2

可以看出,是因为找不到 ncurses 导致的错误。那么尝试安装 ncurses

$sudo apt-get install ncurses
提示信息:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
读取状态信息... 完成
现在没有可用的软件包 ncurses , 但是它被其他的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃,
或者只能在其他发布源中找到
E: 软件包 ncurses 还没有可供安装的候选者
根据《 Compiling the Kernel - errors in make menuconfig ARCH=um 》再试:

$sudo apt-get install libncurses*

提示信息:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
读取状态信息... 完成
注意,根据正则表达式“libncurses*” 选中了 libncurses4
注意,根据正则表达式“libncurses*” 选中了 libncurses5
注意,根据正则表达式“libncurses*” 选中了 libncurses-ruby1.8
注意,根据正则表达式“libncurses*” 选中了 libncurses-ryby1.9
注意,根据正则表达式“libncurses*” 选中了 libncurses-dev
注意,根据正则表达式“libncurses*” 选中了 libncursesw5-dbg
注意,根据正则表达式“libncurses*” 选中了 libncursesw5-dev
注意,根据正则表达式“libncurses*” 选中了 libncurses-ruby
注意,根据正则表达式“libncurses*” 选中了 libncurses5-dbg
注意,根据正则表达式“libncurses*” 选中了 libncurses5-dev
注意,根据正则表达式“libncurses*” 选中了 libncursesw5
已经不需要下列自动安装的软件包:
  libchewing3-data ttf-wqy-zenhei scim-chewing thunderbird-locale-zh-tw language-support-translations-zh
  libchewing3 xfonts-wqy openoffice.org-l10n-zh-cn openoffice.org-l10n-zh-tw openoffice.org-help-zh-cn
  openoffice.org-help-zh-tw language-support-fonts-zh
使用‘apt-get autoremove’ 来删除它们。
将会安装下列额外的软件包:
  libncurses-ruby libncurses-ruby1.8 libncurses-ruby1.9 libncurses4 libncurses5-dbg libncurses5-dev
  libncursesw5-dbg libncursesw5-dev libruby1.8 libruby1.9 ruby1.8 ruby1.9
建议安装的软件包:
  rdoc1.8 ri1.8 ruby1.8-examples rdoc1.9 ri1.9 ruby1.9-examples
下列【新】软件包将被安装:
  libncurses-ruby libncurses-ruby1.8 libncurses-ruby1.9 libncurses4 libncurses5-dbg libncurses5-dev
  libncursesw5-dbg libncursesw5-dev libruby1.8 libruby1.9 ruby1.8 ruby1.9
共升级了0个软件包,新安装了12个软件包,要卸载0个软件包,有60个软件未被升级。
需要下载8868kB的软件包。
操作完成后,会消耗掉33.9MB的额外磁盘空间。
您希望继续执行吗?[Y/n]
选择Y继续执行,完成后,执行$sudo make menuconfig,OK!!!

进行到这,已经可以通过make menuconfig看到内核参数配置了。不过,如果要用X11模式的make xconfig,却还是不行的

$ sudo make xconfig
错误信息:
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/docproc
  CHECK   qt
*
* Unable to find the QT3 installation. Please make sure that
* the QT3 development package is correctly installed and
* either install pkg-config or set the QTDIR environment
* variable to the correct location.
*
  HOSTCC  scripts/kconfig/conf.o
sed < scripts/kconfig/lkc_proto.h > scripts/kconfig/lkc_defs.h 's/P(\([^,]*\),.*/#define \1 (\*\1_p)/'
  HOSTCC  scripts/kconfig/kconfig_load.o
  HOSTCC  scripts/kconfig/kxgettext.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/lex.zconf.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
make[1]: *** 没有规则可以创建“scripts/kconfig/qconf.o” 需要的目标“scripts/kconfig/.tmp_qtcheck” 。 停止。
make: ***[xconfig] 错误2
根据《 配置并编译内核[更新到linux-2.6.26.2] 》知道在正常步骤下,除了安装ncurses外,还要安装build-essential 和 kernel-package

好吧,先开始查询一下,从kernel-package开始吧,毕竟带着kernel,估计比较重要

查询kernel-package信息
$ apt-cache show kernel-package
Package: kernel-package
Priority: optional
Section: misc
Installed-Size: 2192
Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Manoj Srivastava <srivasta@debian.org>
Architecture: all
Version: 11.001
Depends: perl, dpkg (>= 1.4), dpkg-dev (>= 1.4.0.9), gcc | c-compiler, make (>= 3.80-10), po-debconf, gettext, file
Recommends: libc6-dev | libc-dev, bzip2
Suggests: linux-source | kernel-source, libdb3-dev, libncurses-dev, docbook-utils
Filename: pool/main/k/kernel-package/kernel-package_11.001_all.deb
Size: 510452
......
好多信息,不知道能不能看得懂,算了,看一下安装好了没

$ apt-cache policy  kernel-package
提示信息:
kernel-package:
  已安装: (无)
  候选的软件包:11.001
  版本列表:
   11.001 0
     500 http://cn.archive.ubuntu.com hardy/main Packages
    9.001ubuntu15 0
      500 http://ubuntu.cn99.com dapper/main Packages
这个信息就简单多了,没有安装!那么开始安装吧

$ sudo apt-get install kernel-package
提示信息:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
读取状态信息... 完成
已经不需要下列自动安装的软件包:
  libchewing3-data ttf-wqy-zenhei scim-chewing thunderbird-locale-zh-tw language-support-translations-zh
  libchewing3 xfonts-wqy openoffice.org-l10n-zh-cn openoffice.org-l10n-zh-tw openoffice.org-help-zh-cn
  openoffice.org-help-zh-tw language-support-fonts-zh
使用‘apt-get autoremove’ 来删除它们。
将会安装下列额外的软件包:
  dpkg-dev gettext intltool-debian libtimedate-perl patch po-debconf
建议安装的软件包:
  debian-keyring cvs gettext-doc linux-source kernel-source libdb3-dev docbook-utils diff-doc
推荐安装的软件包:
  build-essential libmail-sendmail-perl libcompress-zlib-perl libmail-box-perl
下列【新】软件包将被安装:
  dpkg-dev gettext intltool-debian kernel-package libtimedate-perl patch po-debconf
共升级了0个软件包,新安装了7个软件包,要卸载0个软件包,有60个软件未被升级。
需要下载3436kB的软件包。
操作完成后,会消耗掉12.8MB的额外磁盘空间。
您希望继续执行吗?[Y/n]
选Y吗?当然,不然做这一步干么!


然后轮到build-essential
查询build-essential信息
$ apt-cache show build-essential
提示信息:
Package: build-essential
Priority: optional
Section: devel
Installed-Size: 48
Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Matthias Klose <doko@debian.org>
Architecture: i386
Version: 11.3ubuntu1
Depends: libc6-dev | libc-dev, gcc (>= 4:4.1.1), g++ (>= 4:4.1.1), make, dpkg-dev (>= 1.13.5)
Filename: pool/main/b/build-essential/build-essential_11.3ubuntu1_i386.deb
Size: 7066
......

查询安装状态
$ apt-cache policy build-essential
提示信息:
build-essential:
  已安装:(无)
  候选的软件包:11.3ubuntu1
  版本列表:
     11.3ubuntu1 0
        500 http://cn.archive.ubuntu.com hardy/main Packages
     11.1 0
        500 http://ubuntu.cn99.com dapper/main Packages
没有安装,那装上吧
$ sudo apt-get install  build-essential
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
读取状态信息... 完成
已经不需要下列自动安装的软件包:
  libchewing3-data ttf-wqy-zenhei scim-chewing thunderbird-locale-zh-tw language-support-translations-zh
  libchewing3 xfonts-wqy openoffice.org-l10n-zh-cn openoffice.org-l10n-zh-tw openoffice.org-help-zh-cn
  openoffice.org-help-zh-tw language-support-fonts-zh
使用‘apt-get autoremove’ 来删除它们。
将会安装下列额外的软件包:
  g++ g++-4.2 libstdc++6-4.2-dev
建议安装的软件包:
  g++-multilib g++-4.2-multilib gcc-4.2-doc libstdc++6-4.2-dbg libstdc++6-4.2-doc
下列【新】软件包将被安装:
  build-essential g++ g++-4.2 libstdc++6-4.2-dev
共升级了0个软件包,新安装了4个软件包,要卸载0个软件包,有60个软件未被升级。
需要下载3979kB的软件包。
操作完成后,会消耗掉15.0MB的额外磁盘空间。
您希望继续执行吗?[Y/n]
待build-essential完成安装后,运行make xconfig,错误信息还和之前一样,我知道,我还是没有完成除错任务。注意到上面我用红色标注的错误提示,没有安装QT3

安装QT库
$ sudo apt-get install libqt3-headers libqt3-mt-dev
注意这里把libqt3-headers和libqt3-mt-dev一起安装了。我试过两个分开安装,但好像关联不好,装好一个要卸掉另一个,总是这样。后来我火大,两个一起装,看你们还闹,果然就安分了
提示信息:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
读取状态信息... 完成
已经不需要下列自动安装的软件包:
  libchewing3-data ttf-wqy-zenhei scim-chewing thunderbird-locale-zh-tw language-support-translations-zh
  libchewing3 xfonts-wqy openoffice.org-l10n-zh-cn openoffice.org-l10n-zh-tw openoffice.org-help-zh-cn
  openoffice.org-help-zh-tw language-support-fonts-zh
使用‘apt-get autoremove’ 来删除它们。
将会安装下列额外的软件包:
  comerr-dev libaudio-dev libcupsys2-dev libexpat1-dev libfontconfig1-dev libfreetype6-dev libgcrypt11-dev
  libgl1-mesa-dev libglu1-mesa-dev libgnutls-dev libgnutlsxx13 libgpg-error-dev libice-dev libjpeg62-dev
  libkadm55 libkrb5-dev liblcms1-dev liblzo2-dev libmng-dev libopencdk10-dev libpng12-dev libpthread-stubs0
  libpthread-stubs0-dev libsm-dev libtasn1-3-dev libx11-dev libxau-dev libxcb-xlib0-dev libxcb1-dev
  libxcursor-dev libxdmcp-dev libxext-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev libxmu-dev
  libxmu-headers libxrandr-dev libxrender-dev libxt-dev mesa-common-dev x11proto-core-dev x11proto-fixes-dev
  x11proto-input-dev x11proto-kb-dev x11proto-randr-dev x11proto-render-dev x11proto-xext-dev
  x11proto-xinerama-dev xtrans-dev
建议安装的软件包:
  doc-base libgcrypt11-doc gnutls-bin gnutls-doc krb5-doc libqt3-i18n qt3-doc
推荐安装的软件包:
  libqt3-compat-headers
下列【新】软件包将被安装:
  comerr-dev libaudio-dev libcupsys2-dev libexpat1-dev libfontconfig1-dev libfreetype6-dev libgcrypt11-dev
  libgl1-mesa-dev libglu1-mesa-dev libgnutls-dev libgnutlsxx13 libgpg-error-dev libice-dev libjpeg62-dev
  libkadm55 libkrb5-dev liblcms1-dev liblzo2-dev libmng-dev libopencdk10-dev libpng12-dev libpthread-stubs0
  libpthread-stubs0-dev libqt3-headers libqt3-mt-dev libsm-dev libtasn1-3-dev libx11-dev libxau-dev
  libxcb-xlib0-dev libxcb1-dev libxcursor-dev libxdmcp-dev libxext-dev libxfixes-dev libxft-dev libxi-dev
  libxinerama-dev libxmu-dev libxmu-headers libxrandr-dev libxrender-dev libxt-dev mesa-common-dev
  x11proto-core-dev x11proto-fixes-dev x11proto-input-dev x11proto-kb-dev x11proto-randr-dev x11proto-render-dev
  x11proto-xext-dev x11proto-xinerama-dev xtrans-dev
共升级了0个软件包,新安装了53个软件包,要卸载0个软件包,有60个软件未被升级。
需要下载8933kB的软件包。
操作完成后,会消耗掉33.0MB的额外磁盘空间。
您希望继续执行吗?[Y/n]
选Y安装后,再安装建议软件包
$ sudo apt-get install libqt3-compat-headers

执行
$sudo make xconfig
OK!!!

到此为止,不管是make config 或是 make menuconfig 再或是 make xconfig 都可以运行了。

转载于:https://www.cnblogs.com/yangyang8848/p/3352717.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/294911.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

程学旗 计算机,徐明伟-青年科学家奖-中国计算机学会

2010CCF青年科学家奖获奖者徐明伟 教授清华大学分别于1994年和1998年在清华大学计算机科学与技术系获工学学士和工学博士学位。现为清华大学计算机系教授&#xff0c;博士生导师&#xff0c;网络所所长&#xff0c;计算机学会YOCSEF AC委员&#xff0c;中国通信标准化协会技术管…

.net6给winform带来的新功能

首先简化了Program文件&#xff0c;引入了全局命名空间&#xff0c;但顶级语句由于Main函数的特性[STAThread]没有引用进来。namespace WinFormsDemo {internal static class Program{/// <summary>/// The main entry point for the application./// </summary>[…

男生的哪个“不要”是真的不要?

1 每天一个被炒小技巧&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼2 今天你能接到水算我输&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼3 如何形容自己没钱&#xff1f;&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼4 猜中了开头没猜中结…

Git之如何解决Error:pathspec ‘/layout/radar_chart.xml‘ did not match any file(s) known to

不废话&#xff0c;先爆错误图片 问题产生原因&#xff1a; 我把android studio里面的项目提交到github里面的时候&#xff0c;出现了了error: pathspec app/src/main/res/layout/radar_chart.xml did not match any file(s) known to git.&#xff0c;因为我一开始新建了一个文…

江诗丹顿geneve系列_江诗丹顿的另一面

江诗丹顿在售表款目录里&#xff0c;不算阁楼工匠定制系列&#xff0c;你猜最贵的是哪一款&#xff1f;​答案不是包含三问、万年历和陀飞轮功能的传袭系列超卓复杂腕表&#xff0c;而是一枚具有简单时分功能的高级珠宝表款。打开江诗丹顿的官方微信公众号&#xff0c;进入微信…

[c语言]运算符的优先级与结合性

c语言中运算符的优先级和结合性常常被人混淆一谈&#xff0c;本文目的在于简单谈谈两者的区别。本文举几个简单的例子说明&#xff0c;这些运算符也特别常用。 首先要明白的是&#xff1a;优先级决定表达式中各种不同的运算符起作用的优先次序&#xff1b;而结合性则在相邻的运…

学计算机所需要的英语单词,学计算机最少要懂的英语单词是什么

PC&#xff1a;个人计算机Personal ComputerCPU&#xff1a;中央处理器Central Processing UnitCPU Fan&#xff1a;中央处理器的“散热器”(Fan)MB&#xff1a;主机板MotherBoardRAM&#xff1a;内存Random Access Memory,以PC-代号划分规格,如PC-133,PC-1066,PC-2700HDD&…

程序内存一直在泄漏,原来是异步死循环了 !

一&#xff1a;背景 1. 讲故事上个月有位朋友找到我&#xff0c;说他的程序出现了内存泄漏&#xff0c;不知道如何进一步分析&#xff0c;截图如下&#xff1a;朋友这段话已经说的非常言简意赅了&#xff0c;那就上 windbg 说话吧。二&#xff1a;Windbg 分析 1. 到底是哪一方面…

每天一个linux命令(1):ls命令

ls命令是linux下最常用的命令。ls命令就是list的缩写缺省下ls用来打印出当前目录的清单如果ls指定其他目录那么就会显示指定目录里的文件及文件夹清单。 通过ls 命令不仅可以查看linux文件夹包含的文件而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息…

太巧了!学霸夫妻携手进入武大读博,两人的硕士导师也是一对夫妻

全世界只有3.14 % 的人关注了爆炸吧知识本文募格学术撰写。参考来源&#xff1a;湖北日报、双一流大学网、募格学术此前报道等科研人的爱情是什么样子&#xff1f;或许是在学术的路上他们相识相知&#xff0c;往后也将共同拼搏&#xff0c;在科研领域擦出更多火花~前段时间&…

TOMCAT常用优化

Tomcat的性能&#xff0c;对比Weblogic或者Websphere&#xff0c;自然是差了不少。但是Weblogic或者Websphere的价格都比较昂贵&#xff0c;一些创业级网站恐怕没有能力支付&#xff0c;毕竟钱要用在刀刃上。免费开源的Tomcat&#xff0c;对付一般的网站&#xff0c;还是够用的…

github怎么隐藏自己的pr记录_记便签的软件哪个好?怎么及时记录自己的想法

我们在平时的工作和生活中&#xff0c;如果遇到一些需要及时记下来的东西时&#xff0c;很多人都会选用在便签中记录下来的方式。对于记便签的软件来说&#xff0c;不同的品牌有不同的特点&#xff0c;要想在众多便签软件中选择出一款适合自己的&#xff0c;就需要下点功夫了&a…

bkwin设置文本控件为多行模式

2019独角兽企业重金招聘Python工程师标准>>> 指定textmode&#xff0c; 给到文本控件的区域 <class name"xxxxx" textmode"40A011"/> textmode是DT_FROMT位或值 DrawText api对应的formt 转载于:https://my.oschina.net/u/2436679/bl…

高端智能阿里手机 黑色 ZOPO C2 出售1499

手机在市场上&#xff0c;每个人的注意力放在这些国际品牌三星&#xff0c;HTC 推出的旗舰模型的时间&#xff0c;与一般阿里相结合的内部电话系统最近开展了自主开发的高端智能手机&#xff0c;此名称是卓 Pu 黑色国内高端智能手机的迅速火起来&#xff0c;抓住最佳的国际厂商…

性能测试组件CodeBenchmark V2发布

CodeBenchmark是一款可视化的性能测试组件&#xff0c;通过组件可以对一个或多个功能代码进行一个并发测试&#xff1b;最终通过详细的测试结果来对比不同代码的性能差异。组件的使用非常简单&#xff0c;构建一个控制台程序然后引入BeetleX.CodeBenchmark组件编写几个代码即可…

计算机ftp怎么登陆新用户,多用户登录ftp

第1步:建立虚拟FTP用户数据库文件。第2步:创建FTP根目录及虚拟用户映射的系统用户。第3步:建立支持虚拟用户的PAM认证文件。第4步:在vsftpd.conf文件中添加支持配置。第5步:为虚拟用户设置不同的权限。第6步:重启vsftpd服务&#xff0c;验证实验效果。第1步:建立虚拟FTP用户数据…

一所传闻要被“降级”的211高校,让这位网红教授“救活了”

全世界只有3.14 % 的人关注了爆炸吧知识本文来源&#xff1a;量子位&#xff08; ID: QbitAI&#xff09; 作者&#xff1a;金磊 发自 凹非寺太原理工大学&#xff0c;最近着实有点火。先是11月12日至13日&#xff0c;其官网一口气更新了3位「杰青」副校长&#xff0c;在高校任…

加载elementor时出现问题_不锈钢管在焊接时出现问题要怎么解决?

佛山不锈钢装饰管焊接时会出现各种问题&#xff0c;今天佛山不锈钢装饰管厂家喜有沃小编就简单的整理了一些常见问题及解决方法&#xff0c;希望能对大家有所帮助。佛山不锈钢装饰管焊接制作护栏1&#xff0c; 表面气孔佛山不锈钢装饰管在焊接时产生表面气孔的原因一般为使用了…

Android之玩转MPAndroidChart让(折线图、柱形图、饼状图、散列图、雷达图)优雅的舞动

第一步:不废话,先爆照 我的github地址:https://github.com/changechenyu/MPAndroidChartTest 第二步:介绍MPAndroidChart适用场景并把它的库文件导入我们开发的项目 介绍: MPAndroidChart是一款基于Android的开源图表库,MPAndroidChart不仅可以在Android设备上绘制各种…

在PowerDesigner中设计物理模型1——表和主外键

在PD中建立物理模型由以下几种办法&#xff1a; 直接新建物理模型。设计好概念模型&#xff0c;然后由概念模型生成物理模型。设计好逻辑模型&#xff0c;然后由逻辑模型生成物理模型。使用逆向工程的方法&#xff0c;连接到现有的数据库&#xff0c;由数据库生成物理模型。物理…