mini2440 官方linux-2.6内核文件zImage编译

官方linux-2.6内核文件zImage编译

by HYH | 2018 年 1 月 1 日 下午 5:34

一.说明

1.编译linux内核需要make和arm的交叉编译工具链(gcc),由于linux-2.6较老,采用友善之臂官方的gcc即可,不要采用最新的gcc。

2.编译过程中需要ncurses和zlib的支持库。对于Debian系的linux用一下指令即可:

apt-get install ncurses-dev zlib1g-dev

3.编译过程中还可能用到tar和任意一种文本编辑器(vim,nano等)。

二 .编译

1.解压

tar -xf linux-2.6.32.2-mini2440*.tgz

cd linux-2.6.32.2

2.配置

在linux内核目录下有许多config_mini2440_*(不同的地方就是屏幕型号,主要区别在lcd驱动的不同)。

复制自己的屏幕的配置文件名字为.config

cp config_mini2440_* .config

make menuconfig

按几下Esc回到终端

如果想要调整默认内核参数(方便调试)可用文本编辑器编辑.config中的

CONFIG_CMDLINE=”调整后的内核引导参数”

3 .编译

make zImage

如果没有错误,一段时间后就可在arch/arm/boot/找到zImage,成功编译后,就可以对linux内核进行调试或修改之后重新编译了。

4.修正一些错误

1)如果遇到以下错误

编辑kernel/timeconst.pl

将373行的defined(@val)换成(@val)

然后重新编译即可。

三 .效果

由于没有根文件系统,故qemu模拟时,不能进入最终界面,只能在内核启动界面。

https://hyhsystem.cn/wordpress/


Copyright ?2018 何亚红的博客 unless otherwise noted.

原文地址:https://www.cnblogs.com/HEYAHONG/p/8379187.html

时间: 2024-07-29 23:53:22

mini2440 官方linux-2.6内核文件zImage编译的相关文章

Linux 多个cpp文件的编译(Makefile)

打包so文件: CC = g++ CFLAGS=-Wall -O2 -fPIC TARGET = libbg.so SRCS := $(wildcard *.cpp) OBJS := $(patsubst %cpp, %o, $(SRCS)) all: $(TARGET) $(TARGET): $(OBJS) $(CC) $(CFLAGS) -shared -o [email protected] $^ %.o:%.cpp $(CC) $(CFLAGS) -c $< clean: rm -f *

获取Android源码跟官方Linux内核源码

最近在探索安卓源码跟ROM,有幸买了本书跟在网上看到一些交教程,先做一些笔记,以备不时之需... 1.了解git和repo 2.环境配置 首先最先的肯定是JDK和SDK的安装,网上教程很多,也可以参考Google官方提供的: https://source.android.com/source/initializing.html (a)安装git 和curl: apt-get install git-core curl (b)安装repo: 创建存放repo目录 # mkdir ~/bin  # 

【内核】几个重要的linux内核文件【转】

转自:http://www.cnblogs.com/lcw/p/3159394.html Preface 当用户编译一个linux内核代码后,会产生几个文件:vmlinz.initrd.img, 以及System.map,如果配置过grub引导管理器程序,会在/boot目录下看到这几个文件. vmlinuz vmlinuz是可引导的.压缩的内核文件. 该文件包含了一个最小功能的内核,在PC上通常是先执行vmlinuz,之后加载initrd.img文件,最后加载根分区. 实际上initrd.img

linux内核文件IO的系统调用实现分析(open)

http://blog.chinaunix.net/uid-23969156-id-3086824.html 1.          引言      从事Linux环境工作2年有余,一直懵懵懂懂,1年前拜读了<莱昂氏UNIX源代码分析>一书,感觉自己的学习道路漫漫且修远.最近受chinaunix的精华文帖启发,拟将近来的部分内核调用分析笔记拿出来与各前辈先进共同探讨学习,以壮个人学习之路.      本部分主要讲述的是文件I/O操作的2.6.11内核版本实现,包括了主要的数据结构.宏定义和函数

windwos与linux基于inotify实现文件实时同步实战记录

cwRsync是基于cygwin平台的rsync软件包,支持windows对windows.windows对Linux.Linux对windows高效文件同步.由于CwRsync已经集成了cygwin类库,因此安装的时候可以省去cygwin包.Cwrsync还集成了OpenSSH for windows,可以实现Linux 下Rsync一模一样的操作.使用 cwRsync 来同步文件后,只需要对一台主服务器进行文件修改,其他镜像服务器可以自动同步,包括文件的更新.删除.重命名等. 正好符合我现在

编译 Linux 3.5 内核烧写 Android 4.2.2 到 Tiny4412 开发板

. . . . . 昨天已经编译了 Android 4.2.2 的源码,详见<Ubuntu 14.04 编译 Android 4.2.2 for Tiny4412>一文. 今天我们继续剩下的工作,让我们的 android 系统可以跑在 Tiny4412 开发板上. Android 和 Linux 是两码事,Android 系统是基于 Linux 内核的.我们编译的 Android 源码是 Android 系统本身的源码,而内核是指通过原生 Linux 源码一直过来的内核源码,所以它们需要我们分

#26 Linux kernel(内核)详解与uname、lsmod、modinfo、depmod、insmod、rmmod、modprobe...命令用法

Linux kernel: 内核设计流派: 单内核设计,但是充分借鉴了微内核体系设计的优点,为内核引入了模块化机制,内核高度模块化: 内核被模块化之后,一些最为基本最为重要的内容,被编译到内核核心:而其他更多的功能则以模块的方式来提供:而且支持动态装载和卸载各内核模块: 内核的组成部分: kernel:内核核心文件,一般为bzimage,经过压缩处理的镜像文件:通常内核核心文件保存在/boot/目录下,名称为vmlinuz-version-release kernel object(ko):内核

[国嵌攻略][099][Linux内核配置与编译]

为什么要配置内核 基于硬件和软件的需求选出需要的功能,去掉不要的功能. 内核配置的方法 make config:基于文本交互的配置. make menuconfig:基于图形菜单的配置. make menuconfig配置方法 1.菜单项的分类 processor type and features   处理器类型 networking support            网络协议支持 device drivers                设备驱动支持 file systems     

Linux内核分析(一)---linux体系简介|内核源码简介|内核配置编译安装

原文:Linux内核分析(一)---linux体系简介|内核源码简介|内核配置编译安装 Linux内核分析(一) 从本篇博文开始我将对linux内核进行学习和分析,整个过程必将十分艰辛,但我会坚持到底,同时在博文中如果那些地方有问题还请各位大神为我讲解. 今天我们会分析到以下内容: 1.      Linux体系结构简介 2.      Linux内核源码简介 3.      Linux内核配置.编译.安装 l  Linux体系结构简介 1.       Linux体系结构(linux系统构成)