现在21:20,争取今天把内核烧进去,应该不难吧。。。。。

先看看内核的裁剪与编译。

基本步骤:

1.建立交叉编译环境,这步在之前已经完成,使用交叉编译工具链:arm-linux-gcc-4.4.3.tar.gz

2.修改Makefile,这一步查看资料,写着:

修改内核目录树根下的Makefile时,可先指明交叉编译器。设计时,可向Makefile中添加如下内容:
    ARCH ?=arm
    CROSS_COMPILE?=arm-linux-然后设置PATH环境变量,使其可以找到其交叉编译工具链,然后运行vi~/.bashrc,再添加如下内容:
    export PATH=/usr/local/arln—linux一3.4.4/bin:$PATH

但是,看不明白,首先,在Makefile中已经存在:

ARCH            := arm
CROSS_COMPILE   := $(shell if [ -f .cross_compile ]; then \
                                cat .cross_compile; \
                                fi)

不知道资料描述的意思是直接添加它说的内容,还是对下边的Makefile已存在的部分进行修改,继续查找资料

好,明白了,就是后一种情况,这里对原Makefile的修改为

ARCH            := arm
CROSS_COMPILE   := $(shell if [ -f .cross_compile ]; then \
                                cat .cross_compile; \
                                fi)

因为这里要写CROSS_COMPILE :=后跟arm-linux-gcc的安装路径,但我这时候我先还没有安装,所以接下来又是它的安装。

查询资料,http://blog.csdn.net/authorowen/article/details/7338293,介绍方法非常详细,只是,我的最终还是通过重启电脑,才算安装成功。

我的arm-linux-gcc的最终安装目录是/usr/local/arm/4.4.3,所以上面的修改为

ARCH            := arm
CROSS_COMPILE   := /usr/local/arm/4.4.3/bin/arm-linux-

看到有的资料说,CROSS_COMPILE   :=arm-linux-,这样就需要设置环境变量,还不如直接写路径的好。明白了。

3.Makefile设置好了,就可以make menuconfig了

4.make menuconfig之后,输入命令make clean,make dep,make zImage

后出现以下错误:

1.

include/asm is a directory but a symlink was expected

解决方法:

删除源码根目录下的include/asm,文件夹,问题解决。

分析:

原因:linux/include/asm 文件夹是内核编译过程中创建的,创建结果就是一个指向文件夹asm-arm的链接,表明该系统的平台是arm架构的,而编译系统内核之前,是没有asm这个链接的,所以,在编译过程中,创建该链接时文件名字与asm文件夹的名字发生冲突,报错。http://hi.baidu.com/percy_place/item/18f2b10c6aae9bd972e67641

2.

CHK     include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
  CHK     include/linux/utsrelease.h
  SYMLINK include/asm -> include/asm-arm
ln: creating symbolic link `include/asm': Read-only file system

经查询资料显示,出该错误的原因是由于未将linux源码从windows的共享目录拷贝到linux下的缘故,,对不对先试一下。

先将linux源码拷贝到/home/MY_ZILIAO目录下,然后,make zImage。果然是这样,原因在于上面的错误提示说现在是在建立各个文件间的索引关系,而实际上源码是放在windows下的,这就导致这个索引关系建立时出现错误。所以,不行。

3.又出现了第三个错误,明天再整。歇了。

arch/arm/mach-s3c2410/s3c2410.c: In function 's3c2410_setup_clocks':
arch/arm/mach-s3c2410/s3c2410.c:105: error: too few arguments to function 's3c24xx_setup_clocks'
arch/arm/mach-s3c2410/s3c2410.c: In function 's3c2410_init_clocks':
arch/arm/mach-s3c2410/s3c2410.c:110: error: implicit declaration of function 's3c24xx_register_baseclocks'
make[1]: *** [arch/arm/mach-s3c2410/s3c2410.o] Error 1
make: *** [arch/arm/mach-s3c2410] Error 2

内核编译暂停,因为开发板无法与主机ping通,网络配置不存在问题,怀疑是uboot出错,所以需要重新编译,烧写uboot。

linux内核裁剪,编译,移植---目标板FS2410----未完成相关推荐

  1. [转载]基于ARM的linux内核裁剪与移植

    基于ARM的linux内核裁剪与移植 http://bbs.elecfans.com/forum.php?mod=viewthread&tid=185020  wutaimin( 楼主 ) 2 ...

  2. ARM在嵌入式linux内核裁剪与移植的应用

    微处理器用一片或少数几片大规模集成电路组成的中央处理器.这些电路执行控制部件和算术逻辑部件的功能.微处理器与传统的中央处理器相比,具有体积小,重量轻和容易模块化等优点.微处理器的基本组成部分有:寄存器 ...

  3. linux裁剪内核和移植,嵌入式Linux内核裁剪及移植的研究与实现

    摘要: 嵌入式操作系统是嵌入式系统的软件核心,它管理系统中所有的软件和硬件资源,并且满足嵌入式系统的专用性和可裁剪性.嵌入式Linux以其开源,可裁剪以及模块化设计等特点,吸引了国内外众多研发人员的青 ...

  4. 第四章-linux内核裁剪与移植

    内核:为底层可编程部件提供服务,为上层app提供执行环境 裁剪:裁剪功能,选取满足特定平台和需求的功能 4.1 内核结构     模块化,文件目录形式,方便裁剪,编译     4.1.1主要组成    ...

  5. Linux内核裁剪及编译

    Linux内核裁剪及编译可加载模块 一 Linux基础知识 linux内核组要由五个子系统组成: 进程调度 内存管理 文件系统 网络接口 进程间通信 Linux源码目录 arch    目录中包含于体 ...

  6. linux 脚本裁剪内核,Linux 内核裁剪的自动化方法

    Linux 内核裁剪的自动化方法 随着广泛地获得使用并被移植到不同的平台,Linux 内核源代码正在越来越大,比如, Linux 2.6.28 中, 文件数有 25282 个,大小有350M. 对于某 ...

  7. Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核)

    Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核) 文章目录 Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4 ...

  8. 编译 linux 3,linux内核的编译(3)

    linux内核的编译(3) 2008-02-23 07:17:46来源:互联网 阅读 () 无论什麽档名),然後将你做的 zImage 拷贝进去,(例如,如果你用" /vmlinuz ″ 的 ...

  9. 第三十九天:linux内核裁剪

    培训的第四阶段:通过编写驱动,从应用层,内核层,再到底层硬件之间的关系.明白内核驱动的意义.现在开始才是重头戏,前面的都是铺垫. 正式编写驱动前,要先了解linux内核代码的组成.linux主要是由五 ...

  10. 【Linux 内核】编译 Linux 内核 ⑤ ( 查看 .config 编译配置文件 | 正式编译内核 )

    文章目录 一.查看 .config 编译配置文件 二.正式编译内核 一.查看 .config 编译配置文件 在上一篇博客 [Linux 内核]编译 Linux 内核 ④ ( 打开 Linux 内核编译 ...

最新文章

  1. 马斯克刚刚宣布辞去特斯拉董事会职务,仍然担任CEO
  2. 总结编程语言的空语句
  3. 为什么Python的“私有”方法实际上不是私有的?
  4. 从人工“智障”到人工智能,AI交互还缺什么?
  5. 狮子鱼社区团购独立版V15.3.0源码
  6. 语言怎么解决扭魔方_吧台高度没留够,怎么坐都变扭,直接加玻璃框没想到也能解决难题...
  7. 网页与 alert() 一样用于弹框却比之多了一个取消选项的方法 confirm()
  8. python 环境管理工具_python3环境管理器
  9. 程序员应该具备哪些素质
  10. 第13章 集成学习和随机森林 学习笔记上
  11. Apache POI简单入门
  12. 成为一名Java高级工程师需要掌握哪些技能
  13. 如何制作BAT(Windows批处理文件)病毒
  14. 从appfuse开始学习Spring和Hibernate - (1)构建项目
  15. 如何下载秦皇岛市卫星地图高清版大图
  16. python的文件操作:文件定位读写,重命名,删除等操作
  17. unity_在canvas中修改text和text到底是什么
  18. Linux网络配置和常用命令
  19. 基于51单片机驱动A4988实现步进电机逆时针转动
  20. 线性表的顺序存储及运算的实现

热门文章

  1. 浅谈CAD如何精准导入图新地球并应用在工程行业
  2. 【Spark分布式内存计算框架——Spark Streaming】10. 应用案例:百度搜索风云榜(中)实时数据ETL存储
  3. 如何清理自由天空减肥工具产生的免疫文件夹“KEYFree2008”
  4. Android面试总结(不定时更新版)
  5. 可行性分析,实用模板。
  6. 合并多个excel,csv Excel+Python
  7. (转) tcp的注册端口
  8. Scratch教程:第1课认识Scratch
  9. 拼多多商品详情api接口 拼多多sku价格信息接口
  10. 十二省联考2019酱油记