您的位置:首页 > 运维架构 > Linux

【Linux学习】Ubuntu下内核编译(一)

2017-04-22 09:34 316 查看
(1)当要运行内核配置时,输入make menuconfig时出现错误



遇到这个问题,主要是以为没有ncurses库,而make menconfig 须要这个库。因此须要安装ncurses或者ncurses-devel就可以。输入命令:sudo apt-get install ncurses或者sudo apt-get install ncurses-devel。

可是可能还会出现还有一种问题,如图:



出现这样的问题的解决办法是:如今没有可用的软件包 ncurses , 可是它被其它的软件包引用了。这可能意味着这个缺失的软件包可能已被废弃,或者仅仅能在其它公布源中找到

能够使用命令:$sudo apt-get install libncurses*,进行安装。

错误2:

drivers/input/touchscreen/eeti_ts.c: In function 'eeti_ts_irq_active':

drivers/input/touchscreen/eeti_ts.c:65: error: implicit declaration of function 'irq_to_gpio'

make[3]: *** [drivers/input/touchscreen/eeti_ts.o] 错误 1

make[2]: *** [drivers/input/touchscreen] 错误 2

make[1]: *** [drivers/input] 错误 2

make: *** [drivers] 错误 2

解决的方法:

先编译看下内核有没有问题。执行make命令出现以下的错误:

问题:drivers/input/touchscreen/eeti_ts.c:65: 错误: 隐式声明函数‘irq_to_gpio’解决:又一次make menuconfig,将driver中的输入设备->触摸设备中,将EETI选项不选,保存退出后,又一次make

(3)移植linux2.6.38内核到TQ2440。移植步骤见网址:http://blog.sina.com.cn/s/blog_77aea4c60100qs9o.html

在第9条中自己改为:/drivers/tty/serial/

依照第10条中./patch-kernel.sh c m /usr/src/linux-2.6.38(自己内核所在文件夹)后显示“没有那个文件和文件夹”

解决:看到yaffs2目录下没有patch-kernel.sh,仅仅有patch-ker.sh。然后改为:./patch-ker.sh c m /usr/src/linux-2.6.38然后出现:

Updating /usr/src/linux-2.6.38/fs/Kconfig

Updating /usr/src/linux-2.6.38/fs/Makefile

打补丁完毕
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: