基于Ubuntu14.04构建Linux内核源码树

 

 

    一直在做DSP的驱动开发,思虑良久,觉得对后续职业发展不利,面太窄,决定转向ARM+Linux平台开发,遂开始学习Linux,看了一些资料,有了一定的基础之后在网上找了一个很简单的hello字符驱动准备实践一下,结果一编译就碰见找不到Linux很多头文件的错误(如下图),断断续续搞了有两周,网上也查了好多资料,其中也有说道需要构建Linux内核源码树,但是看Ubunt系统装好后/lib/modules目录下就带有3.13.0-32-generic目录,按理说应该就是内核源码树,但是不知道为什么不能用。而且系统自带/usr/src下面的linux-headers-3.13.0-32和linux-headers-3.13.0-32-generic似乎不是完整的内核源码。这两个问题现在还没搞清楚,待定。

 

下面是通过我参考网上的资料及自己的实践写的构建内核源码树的步骤:

1. 执行 sudo apt-cache search linux-source       获取当前的内核版本号为linux-source-3.13.0

2. 执行 sudo apt-get install linux-source-3.13.0 下载内核版本,下载存储目录在/usr/src中。

3. 使用 tar -jxvf linux-source-3.13.0.tar.bz2    解压下载的内核文件

4. 进入 linux-source-3.13.0                    内核文件夹

5. 执行 sudo make oldconfig                    生成.config配置文件(一路按Enter键)

6. 执行 sudo chmod 660 .config                 设置器对非root用户的写权限(否则后续对.config文件的修改不能保存)

7. 执行 vi .config                            打开.config文件,将其中的CONFIG_RTS5139=m改为CONFIG_RTS5139=n,保存退出

8. 执行 sudo make                             执行完毕之后(大约1-2小时),会在目录下生成vmlinux.o文件

8. 执行 sudo make modules

9. 执行 sudo make modules_install               完毕后,在/lib/modules目录下生成3.13.11-ckt39文件夹,说明内核源码树构建成功。

其它问题:

1. 在进行内核编译之前会提醒需要安装几个相关的软件,如下图所示。

安装方法为使用 sudo apt-get install ncurses-dev 命令,我在安装libqt3-dev的时候提示找不到相应的资源,更换镜像源后依然如此,最后没有安装这个软件就开始构建内核源码树了,目前没有出问题,不清楚这个是干啥的,继续作为遗留问题吧。

转载于:https://www.cnblogs.com/vossveen/p/8158952.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值