linux rootfs编译进内核,九鼎x6818开发板笔记:uboot、kernel、rootfs编译和烧写

下面记录了如何搭建嵌入开发环境,如何编译uboot、kernel、和文件系统,如何烧写镜像以及如何配置uboot环境变量。

阅读注意:记录中(Base框中的内容)一些操作故意被添加,为了展示文件内容,故意调用cat(Ubuntu)或者type(window)命令;为了展示文件夹下的列表,故意用ls或者dir列出文件夹下的文件。记录中xiptech@ubuntu:~$前缀的为Ubuntu下的操作,X6818#前缀的为开发板uboot操作。为了表明后面的操作是在什么平台,我还加了“下面进行xxx操作”的转场描述。

准备工作

下面进行window操作

1、vm安装ubuntu 15.04 x64

2、共享一个window目录到ubuntu

window分享的目录E:\SVNFile\9dx6818Studio

映射到ubuntuxiptech@ubuntu:/mnt/hgfs/Share$ pwd

/mnt/hgfs/Share

下面进行ubuntu操作

3、ubuntu下添加一个工作目录xiptech@ubuntu:~$ mkdir 9dx6818

4、将9dx6818共享到window

通过ui操作共享:在9dx6818文件夹上右键Local Network Share

或者直接修改smb.conf共享:xiptech@ubuntu:sudo gedit /etc/samba/smb.conf

文末尾添加[ubuntu_9dx6818]

comment = 9dx6818 studio on ubuntu

path = /home/xiptech/9dx6818

browseable = yes

writable = yes

public = yes

guest ok = yes

重启samba服务xiptech@ubuntu:sudo /etc/init.d/smbd restart

下面进行window操作

5、建立网络映射

u-boot编译

下面进行ubuntu操作

1、源码拷贝解压

x6818_linux_160719.tar.bz2解压到/home/xiptech/9dx6818/

编译

u-boot配置说明:

/home/xiptech/9dx6818/x6818_linux_160719/uboot下有几个配置

nsih.txt: uboot实际编译的文件,默认为 ibox6818 卡片电脑 2GB 配置文件;

nsih-2G16b-800M.txt: x6818 开发板 2GB DDR3 的配置文件;

nsih-1G16b-800M.txt: x6818 开发板配置文件;

nsih-2G8b-800M.txt: ibox6818 2GB DDR3 的配置文件;

所以我们的开发版用的是nsih-1G16b-800M.txt,写一个编译脚本mk_x6818_board.sh并执行编译xiptech@ubuntu:~/9dx6818/x6818_linux_160719$ cat mk_x6818_board.sh

echo "config ddr3=1G16b-800M"

cp uboot/nsih-1G16b-800M.txt uboot/nsih.txt

./mk -u

xiptech@ubuntu:~/9dx6818/x6818_linux_160719$ ./mk_x6818_board.sh

输出xiptech@ubuntu:~/9dx6818/x6818_linux_160719/out/release$ ls *bin

ubootpak.bin

内核编译

编译xiptech@ubuntu:~/9dx6818/x6818_linux_160719$ ./mk -k

输出xiptech@ubuntu:~/9dx6818/x6818_linux_160719/out/release$ ls *img

boot.img

文件系统编译

安装依赖软件xiptech@ubuntu:sudo apt-get install texinfo

xiptech@ubuntu:sudo apt-get install git

xiptech@ubuntu:sudo apt-get install lib32stdc++-4.9-dev

xiptech@ubuntu:sudo apt-get install lib32z1

打开文件buildroot/output/build/host-ncurses-5.9/include/curses.h找到extern NCURSES_EXPORT(bool)    mouse_trafo (int*, int*, bool);              /* generated */

将这句注释删除掉:/* generated */

编译xiptech@ubuntu:~/9dx6818/x6818_linux_160719$ ./mk -b

输出xiptech@ubuntu:~/9dx6818/x6818_linux_160719/out/release$ ls *rootfs*

qt-rootfs.img

...额!文件系统build3个钟头...

fastboot烧写镜像

1、连接串口和usb

开发版操作SecureCRT连接开发版调试串口(default:115200、右边那个串口),使用安卓数据线连接电脑usb和开发版OTG接口

下面进行windows操作

2、安装fastboot工具

安装到E:\SVNFile\9dx6818Studio\utils\fastbootE:\SVNFile\9dx6818Studio\utils\fastboot 的目录

2017/09/01  15:27    

2017/09/01  15:27    

2013/02/12  08:08           815,104 adb.exe

2013/02/12  08:08            96,256 AdbWinApi.dll

2013/02/12  08:08            60,928 AdbWinUsbApi.dl

2011/03/24  15:17         1,787,392 ApkInstaller.ex

2011/06/09  11:20               404 ApkInstaller.in

2013/02/12  08:08           157,184 fastboot.exe

2010/10/23  16:04                63 license

下面进行开发板操作

3、开发板重启并敲回车进入u-boot

4、进入fastboot模式X6818# fastboot

Fastboot Partitions:

mmc.2: ubootpak, img : 0x200, 0x78000

mmc.2: 2ndboot, img : 0x200, 0x4000

mmc.2: bootloader, img : 0x8000, 0x70000

mmc.2: boot, fs : 0x100000, 0x4000000

mmc.2: system, fs : 0x4100000, 0x2f200000

mmc.2: cache, fs : 0x33300000, 0x1ac00000

mmc.2: misc, fs : 0x4e000000, 0x800000

mmc.2: recovery, fs : 0x4e900000, 0x1600000

mmc.2: userdata, fs : 0x50000000, 0x0

Support fstype : 2nd  boot  factory  raw  fat  ext4  emmc  nand  ubi  ubifs

Reserved part  : partmap  mem  env  cmd

DONE: Logo bmp 311 by 300 (3bpp), len=280854

DRAW: 0x47000000 -> 0x46000000

Load USB Driver: android

Core usb device tie configuration done

OTG cable Connected!

------------------------------------------

下面进行window操作

5、镜像准备

将需要烧写的镜像拷贝到E:\SVNFile\9dx6818Studio\upgrade目录E:\SVNFile\9dx6818Studio\upgrade 的目录

2017/08/28  15:00        16,998,632 boot.img

2017/08/28  17:36       536,870,912 qt-rootfs.img

2017/08/28  15:00           303,544 ubootpak.bin

6、烧写

添加三个脚本用于发起烧写,直接双击执行脚本烧写E:\SVNFile\9dx6818Studio\upgrade>type upgrade_ubootpak.cmd

fastboot flash ubootpak ubootpak.bin

pause

E:\SVNFile\9dx6818Studio\upgrade>type upgrade_boot.cmd

fastboot flash boot boot.img

pause

E:\SVNFile\9dx6818Studio\upgrade>type "upgrade_qt-rootfs .cmd"

fastboot flash system qt-rootfs.img

pause

下面进行开发板操作

7、u-boot环境变量配置X6818# setenv bootcmd "ext4load mmc 2:1 0x48000000 uImage;bootm 0x48000000"

X6818# setenv bootargs "lcd=wy070ml tp=gslx680-linux root=/dev/mmcblk0p2 rw rootfstype=ext4"

X6818# setenv ubootpak 1

X6818# setenv boot 1

X6818# setenv system 1

X6818# setenv userdata 0

X6818# setenv cache 0

X6818# save

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/275567.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

figma下载_素描vs Figma困境

figma下载I distinctly remember how much hatred I had in my heart when I lived through my first UI update. The year was 2009; I had just gotten my braces off and I was ready to smash that ‘Like’ button on my high school crush’s status when I logged into …

祝大家七夕快乐,邀你源码共读,顺带发点红包

大家好,我是若川。这是一个普通的周六。只不过又叫七夕节,祝大家七夕节快乐~所以就不更新技术文了。估计还是有很多读者不知道我。若川名字由来是取自:上善若水,海纳百川。顺便放两篇文章。我读源码的经历,跟各位读者朋…

windows 系统监视器 以及建议阀值

windows 系统监视器 以及建议阀值 计数器的说明可以在添加计数器那边 资源 对象\计数器建议的阈值注释磁盘Physical Disk\% Free SpaceLogical Disk\% Free Space15%磁盘Physical Disk\% Disk Time Logical Disk\% Disk Time90%磁盘Physical Disk\Disk Reads/sec、Physical Dis…

前端人员如何在linux服务器上搭建npm私有库

为什么要搭建npm私有库? 为了方便下载时,公共包走npmjs,私有包走内部服务器。npm包下载的速度较慢,搭建npm私有库之后,会先操作私有库中是否有缓存,有缓存直接走缓存,而不用重新再去请求一遍网络。哪种方式…

硬币 假硬币 天平_小东西叫硬币

硬币 假硬币 天平During the last 1,5 years, I’ve been traveling a lot. Apart from my must-have things like laptop, sketchbook, and power bank, there constantly appears a new one, in a familiar shape but a new look. That’s 在过去的1.5年中,我经常…

Linux创建一个用户时分配组,useradd和groupadd(Linux创建用户\用户组\设置\分配用户权限)的使用...

前言:man useradd    man groupadd    info useradd    info groupadd 都可以获取相关命令的用法信息。个人比较喜欢读英文解释文档,没有你想象的那么complicated!😜USERADD(8) System Management Commands USERADD…

尤雨溪发布的Vue 3.2 有哪些新变化?

大家好,我是若川。今天分享一篇 Vue 3.2 版本的文章。查看源码等系列文章。学习源码整体架构系列、年度总结、JS基础系列1前言8.10号凌晨,尤雨溪在微博平台官宣 Vue 3.2 版本正式发布:此版本包含一系列重要的新功能与性能改进,但并…

对象的清除

调用System.gc() 请求垃圾回收的最简单的方法,但是注意——只是请求,在调用System.gc()之后,有可能会释放出更多的内存空间。转载于:https://www.cnblogs.com/happykakeru/archive/2011/04/09/2010030.html

https://zeplin.io/ 设计图标注及切图

2019独角兽企业重金招聘Python工程师标准>>> https://zeplin.io/ 转载于:https://my.oschina.net/soho00147/blog/3025646

更好的设计接口_设计可以而且必须做得更好

更好的设计接口We live in a world that becomes more dependent on technology every day. Tech gives us new ways to communicate, learn, work, and play, and recently it enabled us to reveal the appalling police brutality towards black people in the US by sharin…

linux隐写文件剥离,杂项的基本解题思路(1)——文件操作隐写、图片隐写

文件操作隐写图片隐写压缩文件处理流量取证技术文章本来是分成4部分的,但是前两部分何在一起写了也就没有分开,所以干脆就只分了两部分文件基本类型的识别一、kail 下file 文件名原理就是识别文件文件头比如这个软件:二、WinHex通过winhex分析…

账务管理系统

2011-04-11 21:55最近写了一个账务管理系统(个人版)使用C#语言编写,编译器VS2010,数据库Access2010,系统采用三层架构,界面可以换肤, 窗体按钮可以移动,可以自定义皮肤,保…

初学者也能看懂的 Vue3 源码中那些实用的基础工具函数

1. 前言大家好,我是若川。最近组织了源码共读活动。每周读 200 行左右的源码。很多第一次读源码的小伙伴都感觉很有收获,感兴趣可以加我微信ruochuan12,拉你进群学习。写相对很难的源码,耗费了自己的时间和精力,也没收…

Flutter RichText支持自定义文字背景

extended text 相关文章 Flutter RichText支持图片显示和自定义图片效果Flutter RichText支持自定义文本溢出效果Flutter RichText支持自定义文字背景Flutter RichText支持特殊文字效果之前介绍过了Extended text,老规矩上图 UI设计说,那个字可以加个卟呤…

细说 Vue.js 3.2 关于响应式部分的优化

大家好,我是若川。上一篇写的是:初学者也能看懂的 Vue3 源码中那些实用的基础工具函数。今天再分享一篇 Vue 3.2 的文章。学习源码整体架构系列、年度总结、JS基础系列背景Vue 3 正式发布距今已经快一年了,相信很多小伙伴已经在生产环境用上了…

linux 运行apj,pxe+ris-linux实现在DELL R710上网络安装windows2003

一、前言网络远程安装windows2003,目前有两种方法:一就是通过windows自带的远程安装服务(RIS,Remote Installation Service),但这种方法需要用windows做为源服务器,需要安装域控制器,dhcp,tftp等…

Debian Security Advisory(Debian安全报告) DSA-4411-1 firefox-esr security update

Debian Security Advisory(Debian安全报告) DSA-4411-1 firefox-esr security update Package :firefox-esr CVE ID: CVE-2018-18506 CVE-2019-9788 CVE-2019-9790 CVE-2019-9791 CVE-2019-9792 CVE-2019-9793 CVE-2019-9795 CVE-2019-9796 CVE…

Entity framework WhereInExtension

摘自 http://www.cnblogs.com/ejiyuan/archive/2009/07/20/1527224.html publicstaticclassWhereInExtension {privatestaticExpression<Func<TElement, bool>>BuildWhereInExpression<TElement, TValue>(Expression<Func<TElement, TValue>>pro…

写给初中级前端的高级进阶指南

大家好&#xff0c;我是若川。最近组织了源码共读活动。每周读 200 行左右的源码。很多第一次读源码的小伙伴都感觉很有收获&#xff0c;感兴趣可以加我微信ruochuan12&#xff0c;拉你进群学习。前言我曾经一度很迷茫&#xff0c;在学了 Vue、React 的实战开发和应用以后&…

Spring Boot Log4j2 日志学习

简介 Java 中比较常用的日志工具类&#xff0c;有&#xff1a; Log4j、SLF4j、Commons-logging&#xff08;简称jcl&#xff09;、Logback、Log4j2&#xff08;Log4j 升级版&#xff09;、Jdk LoggingSpring Boot 默认使用 Logback&#xff0c;但相比较而言&#xff0c;Log4j2 …