• 1环境搭建所需材料
  • 2环境搭建所需材料之间的关系
  • 3所使用的开发板
  • 4译内核
    • 1修改makefile
    • 2拷贝配置文件
    • 3编译得到zImage
    • 4把zImage转成uImage
  • 5开发板串口连接
  • 6uboot设置
  • 7通过tftp服务器下载uImage
  • 8启动内核
  • 9先看挂载文件系统的样子
  • 10下面正式来操作
    • 1安装nfs-kernel-server
    • 2配置网络文件系统
    • 3配置内核里面的nfs选项
  • 11配置开发板的启动参数
  • 12操作板子的Linux
  • 13注意总结
  • 附录

1环境搭建所需材料

  • Linux 内核代码
  • 编译器
  • 文件系统
  • samba
  • tftp
  • SecureCRT6.0
  • 开发板uboot
  • nfs-kernel-server

2环境搭建所需材料之间的关系

3所使用的开发板

4译内核

4.1修改makefile

4.2拷贝配置文件

4.3编译得到zImage

4.4把zImage转成uImage

5开发板串口连接

串口形状 ,在电脑上映射出来的串口设备连接串口



到0回车。。。

6uboot设置


7通过tftp服务器下载uImage


8启动内核


这时启动内核后还不会进入文件系统

9先看挂载文件系统的样子

先看现象:挂载成功,启动板子,再tftp下载

10下面正式来操作

10.1安装nfs-kernel-server

10.2配置网络文件系统


重启远程文件系统
/etc/init.d/nfs-kernel-server restart

10.3配置内核里面的nfs选项

make menuconfig

11配置开发板的启动参数


12操作板子的Linux

下来可以通过SecureCRT操作板子的Linux系统了。我们可以在Ubuntu先用arm-linux-gcc 编译一个hello.c,然后把可执行文件复制到板子的远程文件系统,最后在SecureCRT里运行hello。

13注意(总结)

  • 64位Ubuntu 编译linux源码arm-linux-gcc问题

好像要下载个软件
吴兵(1040003585) 2017-5-16 14:36:59
make出问题
韩滔(1198637117) 2017-5-16 14:37:50
你用的vm和Ubuntu什么版本
**吴兵(1040003585) 2017-5-16 14:39:19
ubuntu 64位
程老师(1209050967) 2017-5-16 14:43:25
但arm编译器是32位**
韩滔(1198637117) 2017-5-16 14:45:08
sudo apt-get install lsb-core

吴兵(1040003585) 2017-5-16 14:57:27

吴兵(1040003585) 2017-5-16 16:32:38
板子网线是连接和电脑同一个网段的路由器
吴兵(1040003585) 2017-5-16 17:00:03
tftp
吴兵(1040003585) 2017-5-16 17:01:58
搞定

  • bootm之后就卡在这里——两个782改为1999

参考文档,把782改成1999即可@吴兵
吴兵(1040003585) 2017-5-16 17:43:40
ok
吴兵(1040003585) 2017-5-16 17:52:45
@张奥华 两个782都要改吗?
这是什么道理
张奥华(434638973) 2017-5-16 17:52:57
是的
改成1999
mach type不匹配
程老师(1209050967) 2017-5-16 17:53:39
uboot引导的内核需要与其机器类型一致


  • 设置bootargs (文件系统路径)

setenv bootargs noinitrd root=/dev/nfs rw nfsroot= 172.16.245.93:/home/wuchengbing/linux/root_nfs ip= 172.16.245.254:172.16.245.93: 172.16.245.1:255.255.255.0 console=ttySAC0,115200 init=/linuxrc mem=64M

文件系统IP:172.16.245.93
板子IP:172.16.245.254
网关:172.16.245.1
掩码:255.255.255.0

  • bootm能不能成功挂载文件系统

@张奥华 搞定,重启远程文件系统
/etc/init.d/nfs-kernel-server restart
吴兵(1040003585) 2017-5-16 18:59:05

附录

工具下载链接:
https://github.com/1040003585/Mini2440/tree/master/Tools

Wu_Being 博客声明:本人博客欢迎转载,请标明博客原文和原链接!谢谢!
《【ARM】一步一步移植Linux Kernel 2.6.13到板子》
http://blog.csdn.net/u014134180/article/details/72873397

如果你看完这篇博文,觉得对你有帮助,并且愿意付赞助费,那么我会更有动力写下去。

【ARM】一步一步移植Linux Kernel 2.6.13到板子相关推荐

  1. AT91RM9200Linux移植笔记(三)-移植Linux kernel 2.6.17

    AT91RM9200Linux移植笔记(三)-移植Linux kernel 2.6.17 手上板子原来自带的是2.4.19的内核, 打算移植新的2.6的内核,从网上下了2.6.17的kernel,下载 ...

  2. 在mtk移植个linux内核,移植 Linux Kernel 造成無法開機之解決方案以及除錯工具

    一般在以下情況, 我們會進行移植 Linux Kernel 的動作. 1. 將新版 Linux Kernel 移植到全新 SoC 上 開發人員為 SoC 廠商(e.g. MTK, TI, Allwin ...

  3. linux kernel 配置(部分) 部分内容翻译自内核帮助文档

    linux kernel 2.6.13 在配置内核前,你应当对详细的了解运行内核的系统,根据自己的需要配置内核. 下面,我将解释内核的各个选项,并根据本人的机器作相应的配置. 在此之前,我把机器硬件参 ...

  4. 09 编译2022年最新的Linux kernel、U-Boot和BusyBox rootfs源码,并用QEMU模拟器运行

    编译2022年最新的Linux kernel.U-Boot和BusyBox rootfs源码,并用QEMU模拟器运行 作者 将狼才鲸 创建日期 2022-11-26 Gitee源码和工程地址:才鲸嵌入 ...

  5. linux kernel mtd 分区

    在移植linux kernel时遇到分区问题.有一点想法,不一定正确,错误请大家指出. 这里基于linux2.6.28.6来说的,其他的位置有可能不同. linux对flash的分区在结构体struc ...

  6. 11 编译2022年最新的Linux kernel 6.1源码,并用QEMU模拟器运行

    编译2022年最新的Linux kernel源码,并用QEMU模拟器运行 作者 将狼才鲸 创建日期 2022-11-26 Gitee源码和工程地址:才鲸嵌入式 / 嵌入式QEMU教程 CSDN文章地址 ...

  7. linux内核关闭igmp,Linux kernel IGMP多个安全漏洞

    受影响系统: Linux kernel 2.6.9 Linux kernel 2.6.8 Linux kernel 2.6.7 Linux kernel 2.6.6 Linux kernel 2.6. ...

  8. linux c++ toolchain 配置文件,一步一步建立基于ARM+Linux的cross toolchain

    声明:本文在参考网上资料的基础上,以梁元恩的<如何为嵌入式开发建立交叉编译环境>为蓝本修改而成.对于自己在建立过程中遇到的问题进行了详细的说明,本文随自己学习的深入会进行相应的更新. 1引 ...

  9. 【移植Linux 3.4.2内核第一步】之简单修改

    前一阵子已经将U-boot移植好了,从今天开始,我们开始移植linux内核.移植的内核为3.4.2,移植的开发板为:jz2440开发板. 想看之前移植U-boot的记录,可以查看我的博客专栏,点击链接 ...

最新文章

  1. UA STAT675 统计计算I 随机数生成6 Accept-Reject Algorithm
  2. “AI+”农业向农民致敬-丰收节交易会:谋定工业反哺农业
  3. poj1236-Tarjan算法
  4. 2012 不宜进入的三个技术点(下)
  5. log4net 日志跟踪
  6. AI 算法起家的今日头条为何败给了色情?
  7. JDBC 学习笔记(一)—— 基础知识 + 分页技术
  8. 介绍一些有趣的MySQL pager命令
  9. 微型计算机控制是微机原理吗,微型计算机控制技术学习心得
  10. WiFi adb studio使用WiFi进行运行调试
  11. Java移位运算符不外乎就这三种
  12. 用C语言检测文本编码的方法
  13. 中国有些东西不是给人吃的,劝大家都看看,为自己为家人
  14. Code Festival 2017 qualA E-Modern Painting
  15. 用java设计实现一个简单的动作冒险类游戏
  16. 计算机鲜艳美丽的花朵教案,《鲜艳美丽的花朵》教案
  17. 【ACWing】1064. 小国王
  18. 良心推荐8个安全测试工具,快来取走
  19. macbook air2018 安装win10
  20. 【知识分享 AI行业现状 产业链】人工智能的概念和发展(2021年中国人工智能产业图谱),AI行业市场规模、全球AI竞争格局、AI人才发展情况、AI就业能力需求。

热门文章

  1. DCMTK:TLS测试DcmSCP和DcmSCPPool类
  2. DCMTK:类DcmOther64bitVeryLong的测试程序
  3. DCMTK:使用RLE传输语法压缩DICOM文件
  4. 创建自定义Widgets小部件扩展
  5. Qt Linguist 开发人员 programmers
  6. C语言检查一个字符串是否为另一个字符串的子字符串的算法(附完整源码)
  7. C++Exponential search指数搜索的实现算法(附完整源码)
  8. C++new和delete
  9. python用户输入一行字符串_python字符串练习
  10. mysql 后十条_mysql几十条常用命令归纳总结