Angstrom移植操作
英码科技的文件系统是定制的The Angstrom Distribution Linux(以下简称Angstrom)。Angstrom是一个界面友好的嵌入式发行版本,用于手持设备,机顶盒和网络存储设备等嵌入式设备。关于Angstrom的相关资料可以登录http://www.angstrom-distribution.org查询。Angstrom Linux是基于OpenEmbedded(以下简称OE)工具创建的嵌入式系统专用Linux发行版。关于OE的相关资料可以登录http://www.openembedded.org查询。
EMA-Tech修改的OE开发包要求开发环境有50G~60G的可用空间,编译运行时确保网络与外网连接OE对于不同系统的支持请参考http://www.openembedded.org/index.php/OEandYourDistro。运行环境为Ubuntu 10.04(OE推荐)32bit(可使用python-psyco大幅提高OE速度)server版。
安装基本的依赖库和工具(不同发行版请查找对应的包名):
在ubuntu下运行命令:
sudo apt-get install sed wget cvs subversion git-core coreutils unzip bzip2 gzip texi2html \
texinfo docbook-utils gawk python-pysqlite2 diffstat help2man make gcc build-essential g++ \
desktop-file-utils chrpath libxml2-utils xmlto python-psyco libapr1 docbook
2)因为OE要求使用bash用作系统shell。请确保/bin/sh为bash。
在ubunutu下运行以下命令:
sudo dpkg-reconfigure dash
里假设$HOME的绝对路径为/home/ema/,即$HOME=/home/ema
如果用户的当前用户的路径不是为/home/ema,则请把/home/ema改为当前用户绝对路径
1) 将我司提供的oe.tar.bz2压缩包拷贝并解压到当前用户$HOME目录下(这里的$HOME是/home/ema目录)(以下的资源均存于我公司提供的“OE开发工具”目录中)
$cp /mnt/hgfs/share/ OE开发工具/ openembedded/oe.tar.bz2 /home/ema
$ tar jxvf oe.tar.bz2 -C /home/ema
在/home/ema下得到名为oe的目录
2) 打入EMA-Tech的支持补丁
$ cp /mnt/hgfs/share/ OE开发工具/ openembedded/patch_sbc3530 /home/ema/oe/sources/openembedded
$ cd /home/ema/oe/sources/openembedded
$ patch -p1 < patch_sbc3530
3) 将提供的资源psp3.00.01.06.tar.bz2、ti_cgt_c6000_6.1.17_setup_linux_x86.bin、Graphics_SDK_setuplinux_4_03_00_02.bin、Graphics_SDK_setuplinux_4_03_00_02.bin.md5放到指定目录下
在ubuntu下运行以下命令:
$ cp /mnt/hgfs/share/ OE开发工具/ openembedded/psp3.00.01.06.tar.bz2 /home/ema/oe/sources/openembedded/recipes/linux/linux-omap-sbc3530-2.6.32
$ cp /mnt/hgfs/share/ OE开发工具/ openembedded/ti_cgt_c6000_6.1.17_setup_linux_x86.bin /home/ema/oe/sources/openembedded/recipes/ti/files
$ cp /mnt/hgfs/share/ OE开发工具/ openembedded/Graphics_SDK_setuplinux_4_03_00_02.bin /home/ema/oe/sources/downloads
$ cp /mnt/hgfs/share/ OE开发工具/ openembedded/Graphics_SDK_setuplinux_4_03_00_02.bin.md5 /home/ema/oe/sources/downloads
修改文件
这里假设$HOME的绝对路径为/home/ema,即$HOME=/home/ema
如果用户的当前用户的路径不是为/home/ema,则请把/home/ema改为当前用户绝对路径
1) 修改/home/ema/oe/build/conf/bblayers.conf文件中的路径
修改文件内容如下:
# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
LCONF_VERSION = "1"
BBFILES ?= ""
# Add your overlay location to BBLAYERS
# Make sure to have a conf/layers.conf in there
BBLAYERS = "/home/ema/oe/sources/openembedded "
如果用户的当前用户的路径不是为/home/ema,请把/home/ema改为当前用户的绝对路径
2) 还需要修改文件$HOME/oe/build/conf/local.conf
修改如下:
# Where to store sources
DL_DIR = "/home/ema/oe/sources/downloads"
INHERIT += "rm_work"
# Which files do we want to parse:
BBFILES ?= "/home/ema/oe/sources/openembedded/recipes/*/*.bb"
BBMASK = ""
# Qemu 0.12.x is giving too much problems recently (2010.05), so disable it for users
ENABLE_BINARY_LOCALE_GENERATION = "0"
# What kind of images do we want?
IMAGE_FSTYPES += "tar.bz2"
# Make use of SMP:
# PARALLEL_MAKE specifies how many concurrent compiler threads are spawned per bitbake process
# BB_NUMBER_THREADS specifies how many concurrent bitbake tasks will be run
PARALLEL_MAKE = "-j4"
BB_NUMBER_THREADS = "4"
DISTRO = "angstrom-2008.1"
MACHINE ?= "sbc3530"
# Set TMPDIR instead of defaulting it to /tmp
TMPDIR = "/home/ema/oe/build/tmp-angstrom_2008_1"
# Don't generate the mirror tarball for SCM repos, the snapshot is enough
BB_GENERATE_MIRROR_TARBALLS = "0"
# Go through the Firewall
#HTTP_PROXY = http://:/
如果用户的当前用户的路径不是为/home/ema,请把/home/ema改为当前用户的绝对路径
OE编译示例
1) 设置编译环境变量(一个终端窗口只需设置一次,重新打开终端窗口需重新设置)
$ export OE_BUILD_DIR="$HOME/oe/build"
$ export OE_BUILD_TMPDIR="$HOME/oe/build/tmp-angstrom_2008_1"
$ export OE_SOURCE_DIR="$HOME/oe/sources"
$ export OE_BASE="$HOME/oe"
$ export PATH="$HOME/oe/sources/bitbake/bin:$PATH"
$ export BBPATH="$HOME/oe/build:$HOME/oe/sources/openembedded"
2) 编译有console的微型文件系统
$ bitbake console-base-image(编译需要的时间比较长)
编译完成后生成的console文件系统和Linux Kernel文件所在的目录:
$HOME/oe/build/tmp-angstrom_2008_1/deploy/glibc/images/sbc3530/
其中文件系统为
Angstrom-console-base-image-glibc-ipk-2011.03-sbc3530.rootfs.tar.bz2
(用于解压到SD卡上EXT分区的文件系统)
Angstrom-console-base-image-glibc-ipk-2011.03-sbc3530.rootfs.ubi
(用于烧写到Flash的文件系统)
Linux Kernel为
uImage-2.6.32-r90+gitra6bad4464f985fdd3bed72e1b82dcbfc004d7869-sbc3530.bin
(需要修改名才能在SD卡上用,如:uImage,烧写就不需要)
bz2文件可以用在SD卡中作为根文件系统。ubi文件是Flash镜像,在之后制作SD卡时会用到。但建议将发开。制作的文件系统可以放在SD卡中使用了。
在镜像生成时,同时还生成一个内核的配置文件.config ,可以使用这个配置文件单独的去编译调试内核
更多OE知识,请查阅网站:http://docs.openembedded.org/usermanual/usermanual.html
更多英码科技的产品,请登陆英码信息科技有限公司网站http://www.ema-tech.com。
转载于:https://www.cnblogs.com/black8ema/archive/2012/03/31/2427267.html
Angstrom移植操作相关推荐
- STM32工程添加模块、代码移植操作步骤
1.直接复制粘贴第一个新建的工程,然后改名 2.在工程里新建一个WokePace文件用来放其他模块文件 3.去别的工程直接把想要的模块复制到该文件夹下,每个模块都有一个main.c和main.h,也可 ...
- Cortex M33处理器下移植FreeRTOS V10.2.0的操作记录
1.前言 本文记录了本人使用Keil V5.28向Cortex M33处理器下的一款MCU进行FreeRTOS V10.2.0的移植操作,过程中描述如存在不当或错误之处欢迎指正. 2.FreeRTOS ...
- “头移植模型”论文称换头术可行 业内疑两大问题未解
来源:澎湃新闻 概要:11月21日,"换头术"的倡导者.哈尔滨医科大学教授任晓平在一场见面会上称,团队在科学领域取得重大突破, "完成了人类第一例头移植外科实验模型&qu ...
- 数据如何导入oracle数据库,如何用Oracle导入导出工具来实现Oracle数据库移植?
Oracle数据库作为目前市场的主流数据库之一,许多应用都在其上进行开发,由于Oracle数据库更新换代的原因和不同的应用程序提供商,可能会造成在一个单位的应用中存在Oracle的几种版本,如Orac ...
- oracle数据库读取工具,用Oracle导入导出工具实现Oracle数据库移植
用Oracle导入导出工具实现Oracle数据库移植.很不错的方法,建议使用![@more@] 用Oracle导入导出工具实现Oracle数据库移植 Oracle数据库作为目前市场的主流数据库之一,许 ...
- ARM(AM5728)板移植VSFTPD
简介:在ARM板上搭建VSFTPD一直出现各种奇怪的问题,搜寻许多资料未果,现已解决,特此分享. 说明:以下的分享均是VSFTPD的初级用法以及我所遇到的问题,x86使用源码安装也可使用此方式进行安装 ...
- STM32移植LWIP
目录 01.IAR工程移植 02.修改Keil工程 在上篇文章<LWIP初体验-修改ST官方demo>中我们已经在自己的开发板上实现了简单的TCPsever和TCPclient功能.验证完 ...
- uC/OS_II操作系统移植,亲测可用
uC/OS-II简介 uC/OS-II由Micrium公司提供,是一个可移植.可固化的.可裁剪的.占先式多任务实时内核,它适用于多种微处理器,微控制器和数字处理芯片(已经移植到超过100种以上的微处理 ...
- 瑞萨linux编译环境,瑞萨RZ/A2M Linux4.19系统构建与驱动移植纪实之一:BSP环境搭建...
瑞萨RZ/A2M Linux4.19系统构建与驱动移植纪实之一:BSP环境搭建 我的系统信息 下载RZ/A Linux-4.19 BSP 编译安装带有SSL模块的Python 2.7 我的系统信息 下 ...
最新文章
- Android的组件化和模块化
- 安装、连接MS SQL Server 2000的问题
- 简述Linux 文件系统的目录结构
- Ubuntu下eclipse indigo版在线安装struts插件
- fork-join详解(2)
- You can format your XML in the 'standard' Android way...
- Boot2Docker 安装运行出现客户端与服务端版本不一致的解决办法
- VMware vSphere 服务器虚拟化之二十七桌面虚拟化之View中使用Thinapp软件虚拟化
- 使用SaltStack安装JBoss
- 50个免费下载3D模型的站点
- 下载百度网盘资源不限速的两种方法
- oracle toda和pl/sql匪夷所思的差异
- iar升级芯片库_【经验】如何使用IAR生成MCU RL78的库文件?
- css 延时几秒代码,CSS3 会聚展开文字动画实例及animation-delay属性规则
- 【控制系统的微分方程】
- oracle报错解决
- PostMan管理EZ
- 好的程序员如何写代码
- Hello Java(JAVA的简介)
- 导致论文高被引的关键因素
热门文章
- 冒泡排序 自带时间复杂度测试
- oracle 查看内存参数配置,Oracle内存参数配置及版本问题
- C语言中面向对象编程
- php redis并发读写,PHP使用Redis实现防止大并发下二次写入的方法
- kettle 内存设置_【转】kettle 的内存设置及输出日志的时间类型
- 视频监控中的光端机是干什么用的?
- 【渝粤教育】国家开放大学2018年秋季 0043-22T计算机文化 参考试题
- 【渝粤教育】 国家开放大学2020年春季 1259西方行政学说 参考试题
- 【渝粤题库】国家开放大学2021春2097民法学(1)题目
- 如何选择LoRa产品