Linux源码树的搭建
目的
源码树创建过程
- 首先也是要执行uname -r查看系统内核版本~~当然了显示内容和上图中的文件夹名字相同的:3.8.0-29-generic
- 从终端查看可用源码包~~$apt-cache search linux-source 显示内容如图所示
- 下载源码,此处执行sudo apt-get install linux-source-3.2.0结果如下所示~~
- 解压源码包~~下载完成之后,我们会在/usr/src/目录底下看到我们的下载压缩包。执行解压命令解压包sudo tar -jxvf linux-source-3.2.0.tar.bz2
- 配置内核~~进入解压后目录,在编译源码之前我们还需要.config配置文件。通常的做法有:执行make oldconfig这样做就是执行了缺省配置(默认配置),这样可能导致内核不支持新功能,其实只要内核不安装这都是无所谓的。我的做法是拷贝系统安装时的配置文件到本目录下然后执行编译,这样做配置的内核和当前运行的内核差别最小。$sudo cp ../*generic/.config ./执行拷贝操作。
- 然后执行make,如果您的机器配置还不错那么可以尝试make -j4 开启多线程编译来提高速度。~~漫长的等待,然后执行make bzImage,结束之后在当前目录底下生成了vmlinux文件。。。其实这一步也不是必须的,因为我们的目的是构建内核源码树不是编译内核。~~这算是附加收获吧。
- 这一步才是我们必须要做的:~~ $sudo make modules 编译模块然后~~$sudo make modules_install进行安装,其实这也是一个漫长的等待,等待过后我们会在/lib/modules/目录底下看到我们的成果~~文件夹3.2.51.
- 想要编译针对3.2.0内核的驱动我们就会需要用到该目录下的build路径了。下篇便是编写简单的驱动来测试源码树
总结
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。