作为Linux驱动开发的小白搭建整个开发环境是至关重要的一步,鄙人是从裸机程序直接跳转到驱动里面来的,裸机到驱动的衔接没怎么看,所以在刚开始驱动的时候搭环境遇到了大麻烦,不过还是在坚持中挺过来了,还得感谢博客园Nqian博主的支持,  大家可以看看他的文章非常好,还可以和博主交流   网址:https://www.cnblogs.com/lifexy/

环境搭建:

一 单板配置:

  如果你没有自己移植U-boot和内核建议直接烧官方提供的,(如果你想自己去移动植,可以参考:https://www.cnblogs.com/lifexy/p/8136378.html)小白不建议,

  对于小白我们可以直接来参考官方提供文档“重新烧写JZ2440的整个系统”里面步骤非常详细

    第一步   烧写uboot到nor flash

      第二步格式化一下nand flash然后重新保存uboot的环境变量到nand flash

    第三步烧录ubootnand flash

    第四步:烧录linux内核的uImage文件到nand flash

   这一步文档上使用的是tftpd32.exe软件来烧入的,但是发现此软件有问题对比如图,一直没有OK不知道为什么?果断使用dnwl来烧入

  使用dnwl烧入方法:

  首先启动单板连接串口到如图界面:

  

  第五步:烧录linux根文件系统文件到nand flash   方法同第四步

至此单板的配置就OK·,开机可以直接进到官方提供的QT界面里面去。

二.驱动编译环境配置

  对于Linux系统而言对于编译环境是非常严格的,一定要一一对应,我们单板上用的是官方提供的uImage4.3(其实是linux-2.6.22.6内核),所以我们可以在Ubuntu用linux-2.6.22.6内核来搭建环境

  第一步:解压内核和打补丁,如图:

  第二步:简单修改linux-2.6.22.6内核文件:

  配置顶层Makefile(主要是配置编译器为arm-linux-gcc-3.4.5-glibc-2.3.6所在路径)

记得一定要修改怎么Ubuntu的默认编译器和Makefile一样,不然到时候你的测试程序会一直报错的,如图:

  第三步:配置Ubuntu的交叉编译工具:  

   sudo vim /etc/environment

 第四步:Ubuntu NFS配置与单板互传文件:

  非常重要的一步,笔者弄了好久才成功了,具体还不太弄,推荐经典文章:https://www.cnblogs.com/multimicro/p/9269863.html

需要注意:每次重新开机单板的时候都要在内核里使用mount挂载NFS目录。

mount -t nfs -o nolock,vers=2 192.168.1.199:/home/oyl/nfs_root /mnt
//mount命令将远端虚拟机/work/nfs_root目录挂载到开发板/mnt目录里
//nolock:禁用文件锁 vers=2:nfs版本协议2 192.168.1.199:虚拟机地址

运行报错:

原因是没有打开网卡,(避免每次都要手动打开可以写入/etc/init.d/rcS)

ifconfig eth0 up
ifconfig eth0 192.168.1.198

  如果mount挂载还是失败,可能有两个原因

  1.确定开发板是否与Ubuntu位于同一网段

ifconfig eth0 up //开启网关0,连接网线到路由器
ifconfig eth0 192.168.1.107 //设置ip,与虚拟机ip网段一样,
ping 192.168.1.106 //与虚拟机ping一下,是否已通

  2.确定Ubuntu是否有被挂载可以回到https://www.cnblogs.com/multimicro/p/9269863.html

到此一个完整的开发环境就搭建完成了,下面就是各种驱动的玩耍了。

转载于:https://www.cnblogs.com/ncne/p/10753426.html

JZ2440驱动开发之环境搭建相关推荐

  1. linux设备驱动开发之环境搭建(基于exynos4412)

    第一章 linux设备驱动开发之环境搭建(基于exynos4412) 目录 第一章 linux设备驱动开发之环境搭建(基于exynos4412) 1.搭建开发板运行环境 1.1.交叉开发模式 安装交叉 ...

  2. Window XP驱动开发(二) 环境搭建(VS2008+WDK+DDKWzard)及示例源码分析

    郁闷,做了WCE嵌入式驱动这么久还没热身够,又被调到做window xp下的驱动开发.没办法.只能受令了. 现在就开始自己的学习之旅吧. 转载请标明是引用于 http://blog.csdn.net/ ...

  3. WIN10 + VS2015 + WDK10 + SDK10 + VM虚拟机驱动开发调试环境搭建

    为什么80%的码农都做不了架构师?>>>    一.准备工作 1 系统环境:Win10系统 2 开发工具:VS2015 3 驱动开发工具:WDK10 4 Windows SDK:SD ...

  4. HarmonyOS(鸿蒙系统)物联网开发教程——环境搭建

    HarmonyOS(鸿蒙系统)物联网开发教程--环境搭建 目录 HarmonyOS(鸿蒙系统)物联网开发教程--环境搭建 前言 1 HarmonyOS简介 2 开发环境搭建 2.1 简洁版环境搭建(使 ...

  5. 【 RA4M2开发板环境搭建之串口下载1】

    [ RA4M2开发板环境搭建1] 1. 前言 1.1 活动来源 1.2 开发环境 1.3 RA4M2开发板 2. MDK环境准备 2.1 keil 5下载安装 2.2 安装RA4M2的软件支持包 2. ...

  6. 2020-02-06-Linux设备驱动开发0-环境搭建

    layout title subtitle date author header-img catalog tags post Linux设备驱动开发0-环境搭建 学习Linux驱动开发,当然得有一个自 ...

  7. BI报表开发之环境搭建(二)

    上一篇<BI报表开发之环境搭建(一)>中详细描述了SQL SERVER R2 的安装步骤,本篇将继续描述BI报表开发的环境搭建部分-- Orale数据库安装. <1>下载ora ...

  8. auto.js id为参数滑动_【Autojs教程】02Autojs PC端开发调试环境搭建

    [Autojs教程]02-Autojs PC端开发调试环境搭建 写在前面 本篇教程算是保姆级教程了,希望以此能吸引更多感兴趣的同学学习Autojs,也希望大家能因此碰撞出更多的奇思妙想 关注微信公众号 ...

  9. 小程序开发及环境搭建及发布

    一.小程序开发及环境搭建 1.下载Hbuild X https://www.dcloud.io/hbuilderx.html 2.下载腾讯开发工具 https://q.qq.com/wiki/tool ...

最新文章

  1. 网络营销外包专员浅析网络营销外包站内关键词优化技巧(不外传)
  2. 《ASP.NET Web 站点高级编程》勘误 Part 3
  3. qt qtableview 刷新列表_qt qtablewidget 刷新
  4. 通过有序数组生成平衡搜索二叉树
  5. VC6中根据需要显示滚动条
  6. 你不了解PHP的10件事情!
  7. [CSS]打败 IE 的葵花宝典:CSS Bug Table
  8. 设计学生证信息管理系统(C++实现,附源代码,详细解析)
  9. ccf_201712-02
  10. js 控制滚动条位置
  11. 关于SVN更新时文件加锁的小结
  12. 可拖动组件 v-drag vue
  13. 移动端 1px 像素处理
  14. 论成长型思维的重要性
  15. javascript 代码获取 QQ 群成员
  16. Python的一个图片识别工具-PyTesseract(Win10)
  17. 《数字逻辑设计与计算机组成》一练习
  18. 软件加密技术和注册机制加密基础(转)
  19. 中断服务子程序 ISR
  20. python——小例子 及 end=““ 和“t“的用法

热门文章

  1. Python: The _imagingft C module is not installed错误的解决
  2. 笔记:编写高质量代码 改善Java程序的151个建议
  3. [转载]Android: 如何实现ScrollView中含有ListView?
  4. LayoutInflater中四种类型inflate方法的介绍
  5. 算法学习:后缀数组(SA)
  6. win10设置默认输入法
  7. 查看文件more、less
  8. 百度地图手绘线坐标获取
  9. 《图解机器学习-杉山将著》读书笔记---CH1
  10. 写在阿里去IOE一周年