运行在TQ2440开发板上以及X86平台上的linux内核编译
一、运行在TQ2440开发板上的linux内核编译
1、获取源码并解压
直接使用天嵌移植好的“linux-2.6.30.4_20100531.tar.bz2”源码包。
解压(天嵌默认解压到/opt/EmbedSky/linux-2.6.30.4/中)
tar xvjf linux-2.6.30.4_20100531.tar.bz2 -C /
2、获取默认配置文件
可以使用“config_EmbedSky_W43”作为默认配置文件
cp config_EmbedSky_W43 .config
3、配置(根据需要修改部分选项)
笔者认为只要有一个适合自己开发板的“.config”,这一步也不需要,直接使用这个配置文件去编译内核即可。
至于这一步的意义,其实也就是为了生成一个适合自己开发板的“.config”,决定哪些模块需要编译进内核(裁剪内核)。
默认配置文件的意义就在于,为我们提供了一种参考,通常选择的默认配置文件是与我们的开发板很相似的。由于配置选项太多,多达上千项,使用默认配置文件,只需要修改那些默认配置文件与我们开发板不一样的选项即可,这肯定是节省时间和体力的捷径。
make menuconfig
4、编译内核
make zImage
5、编译modules(内核驱动)模块
make modules
可在内核中挂载使用生成的“*.ko”文件
二、运行在X86平台上的linux内核编译和安装
1、获取源码并解压
可以从http://www.kernel.org/选择一个想要的版本,例如“linux-3.2.55.tar.xz”,并解压到“/usr/src”(/usr/src目录下是专门存放内核源代码的)。
sudo tar -xvf linux-3.2.55.tar.xz -C /usr/src
解压后源码大小几百MB。
2、 获取默认配置文件
比如说:/boot/config-3.2.0-55-generic-pae(Ubuntu当前内核的配置文件)
cp /boot/config-3.2.0-55-generic-pae .config
3、配置
make menuconfig
此命令会调取各级目录中的kconfig生成一个菜单,通过这个菜单,我们可以配置linux内核。配置完成后的信息,保存在“.config”中。在编译内核的时候,会读取这个配置文件,从而决定以什么样的方式编译内核,编译内核的那些模块等等。
4、编译内核和模块
编译内核
make
此过程长达几个小时,编译完后源码包就有5、6个G,所以在编译之前确保你的虚拟磁盘剩余容量足够大,不够的话参考修改虚拟机linux硬盘的大小 进行磁盘扩容,否则在编译过程中将出现“磁盘空间不足”的问题。生成的内核镜像在arch/x86/boot目录下。
安装模块
make modules_install
make modules_install命令用于安装可装载模块,安装的目的目录时/lib/modules/3.2.55
5、安装
make install
make install命令执行三个操作:复制内核镜像到/boot目录下;生成initrd-img;更新grub。命令成功执行成功后,新的内核已可以使用,并且列在引导菜单中。
/boot目录下的内容
6、重启检查
重启系统,grub引导选项中多了我们新编译的内核选择,选择新内核引导。“Previous Linux version”为更新内核前的内核启动项。
进入系统后执行命令uname -r 查看当前的内核版本。
uname -r
后记
倘若想卸载自己编译的内核,可以参考linux下删除内核 进行操作。
参考网页:linux内核学习之二:编译内核
自己编译linux内核
转载于:https://www.cnblogs.com/amanlikethis/p/3592009.html
运行在TQ2440开发板上以及X86平台上的linux内核编译相关推荐
- android移植 开发板,Android在TQ2440开发板上的移植
原标题:Android在TQ2440开发板上的移植 一.目前进展 1.已经可以通过NFS在开发板上运行 最近自己编译了android的文件系统,并在TQ上运行了,比熊猫版的bin程序多些,基本功能已经 ...
- Android在TQ2440开发板上的移植(转)
一.目前进展 1.Android已经可以通过NFS在TQ2440开发板上运行 最近自己编译了android的文件系统,并在TQ上运行了,比熊猫版的bin程序多些,基本功能已经实现,大家可以从: htt ...
- linux开发板led怎么亮,TQ2440开发板上实现按键点亮LED(转载)
//声明:该文章是在网上搜到的,对作者表示感谢. 文章记录了作者在TQ2440开发板上实现按键点亮LED驱动开发的详细过程,还记录了一些容易出现的错误,以及怎么解决这些错误. 一.驱动开发流程 二.驱 ...
- linux内核添加usb键盘驱动,配置USB外设 - linux-2.6.32在mini2440开发板上移植_Linux编程_Linux公社-Linux系统门户网站...
linux-2.6.32在mini2440开发板上移植 配置USB外设 [日期:2013-04-08] 来源:Linux社区 作者:ssdsafsdsd [字体:大 中 小] 编者:因为LINUX内核 ...
- 编译linux tq2440,QT4.8.2在TQ2440开发板上的移植(一)--编译和安装
主机版本:Ubuntu 11.04 交叉编译器版本:4.3.3 移植的主要工作就是编译在ARM板上运行的qt库,并且把这些库做到根目录中.需要的文件tslib-1.4.tar.gz qt-everyw ...
- linux在开发板LCD上显,W35型LCD驱动移植 - linux-2.6.32在mini2440开发板上移植_Linux编程_Linux公社-Linux系统门户网站...
编者注:本移植主要步骤还是按照手册来,里面讲解了一些有用的基础知识.但书册上提供了集中屏幕的方案,我们这里主要就用一种,也就是开发板自带的W35型号.液晶驱动的源程序在src/drivers/vide ...
- Liunx树莓派(ARM)开发篇—第十四章、树莓派Linux内核编译步骤(超详细、图文结合)
对树莓派内核源码进行配置后,下一步要进行树莓派Linux内核编译 以下步骤均在PC端虚拟机上完成 准备材料:PC端虚拟机.树莓派交叉编译工具.树莓派内核(交叉编译工具.内核下载步骤见树莓派内核源码) ...
- 将linux内核烧进arm板,ARM开发板上uClinux内核移植
<ARM开发板上uClinux内核移植>由会员分享,可在线阅读,更多相关<ARM开发板上uClinux内核移植(19页珍藏版)>请在人人文库网上搜索. 1.纷傲掌秀悸篷益哑檀扬 ...
- ubuntu如何在开发板上挂载文件
一.在ubuntu系统中安装nfs服务 1.安装nfs软件包 sudo apt-get install nfs-kernel-server sudo apt-get install nfs-commo ...
最新文章
- 隐马尔可夫模型维特比算法与前向算法区别
- Scala模式匹配的亮点——Martin Odersky访谈(四)
- anaconda更换镜像源
- (转载)linux如何设置为低内核启动(降核)
- Asp.net在线压缩和解压缩简单实现(附项目源码)
- mysql 碎片率_MySQL数据碎片的整理和分析
- 筛法求素数c 语言,位筛法求素数,有段代码看不懂,有大佬可以来说一下
- Linux|Qt工作笔记-linux系统下安装qt4.5.3版本的详细步骤
- 跨过山和大海的地铁外放党们有人管了,明年开始!网友:没收手机么?
- Java基础-final关键字
- Fedora CoreOS to CentOS7 问题汇总1
- (转)栈与堆栈的区别
- ssh java_java中的SSH的各自作用是什么-百度经验
- 程序关闭是总是出异常解决方法
- 求教:.Net Framework 3.5 SP1安装失败
- selenium万能选择器
- ubuntu下查看opencv版本
- 小众软件(持续更新)
- python中常用的utils
- PTA 1069 微博转发抽奖(Python3)