RDA项目打包
注意APP的编译搭建:
./aps/Makefile.toolchain //ccoption path的设定
./aps/rules.mak //统一的编译规则
MAKE -C
1、TOOLS的可执行程序,工具文件不用每次生成
tools/lzma460
tools/pnlset2bin
tools/vip2bin
tools/mergeImage
2、aps/lib
存放所有"aps"目录下的静态库文件
1) 通过“aps\application\radisson\atv_project\Makefile”进行编译
2) 链接:EXTRA_OBJS += -Wl,--start-group $(LIBS) -Wl,--end-group
3) UI相关:compnent += app_common_api sys_common_guiobj $(UIRESOURCE_DIR)
makefile的编译:
$(compnent): refineUIResource
@$(MAKE) -C $@ all
UI相关LIB文件:
libMMUIresources.a、libapp_common.a、libatv_guiobj.a、libmedia_guiobj.a、libresources.a、libsys_common_guiobj.a
4)根文件系统进程:“aps\application\radisson\atv_project\umf”
aps下所有的文件,会生成根文件系统进程“umf”,系统启动后自动加载“umf”进程。
umf通过“aps\minibox\Makefile”拷贝到kernel的根文件系统:“kernel\linux-2.6.35.9\initramfs\tmp”,COPY方式如下:
install:
cp -f ../application/$(APPDIR_NAME)/umf $(CONFIG_INSTALLDIR)/tmp
-cd $(CONFIG_INSTALLDIR) && rm -rf $(CONFIG_INSTALLDIR)/bin/*
-cd $(CONFIG_INSTALLDIR) && rm -rf $(CONFIG_INSTALLDIR)/sbin/*
cd $(CONFIG_INSTALLDIR)/bin && $(foreach LK,$(LINK),ln -fs ../tmp/umf $(LK);)
cd $(CONFIG_INSTALLDIR)/bin && rm buildin_cmd
cd $(CONFIG_INSTALLDIR) && ln -fs tmp/umf init
cp init.d/initsc $(CONFIG_INSTALLDIR)/etc
5)kernel相关:
kernel的编译分为三部分:“kernel”编译、“drivers”编译,以及根文件系统“initramfs”。
顶层makefile工具处理:“../../tools/packet/packet $(build_dir)-$(GET_BIN_FILENAME)_$(CHIP_ID) 0x00294801 $(CHIP_ID)”,生成文件如下:
“vmlinux.bin”、“vmlinux.dsc”、“vmlinux”、“System.map”、“initramfs\tmp\timestamp_info”
文件会移动“mergedir”与相关BIN文件一起打包,需要打包的BIN在文件“mergeImage.cfg”中指定。
6)其它:
打包后“drivers\i2c”目录的源文件要保留,TOOLS会生成跟系统。
7)重新打包后需要替换的文件:
kernel目录的:“vmlinux.bin”、“vmlinux.dsc”、“vmlinux”、“System.map”、“initramfs”
boot目录的:“boot.bin”、“bootrom_raw.bin”
aps/lib目录的:libMMUIresources.a、libapp_common.a、libatv_guiobj.a、libmedia_guiobj.a、libresources.a、libsys_common_guiobj.a
“drivers”目录以及“aps\application\radisson\atv_project\resources”目录
8)SVN CHECK的代码,TOOLS下某些工具没有可执行权限,在编译不通过的时候,需要chmod +x
RDA项目打包的更多相关文章
- 图解使用VS的安装项目打包程序
背景 这段时间一直在做客户端程序的打包程序,遇到各种坑.因为以前没有任何这方面的经验,历经各种折腾,费尽九牛二虎之力总算是完成了. 虽然没有太多技术含量,但是因为挺繁琐的,所以还是在此记录一下. 由于 ...
- 将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行
一.概述 java项目有两种架构,一种是 B/S 架构的,一种是 C/S 架构的. 对于 B/S 架构来说,我们常见的 java ee 即是 B/S 架构,通常,开发人员会在本地进行开发,然后将项目打 ...
- maven 项目打包 及window下部署到tomcat
1.maven项目打包 2.将war文件拷贝到tomcat目录webapps下(不要再建目录)3.将必要的jar文件拷贝到tomcat目录libx下 war包 或jar 包 会生成到项目所在路径 的t ...
- Storm系列(三):创建Maven项目打包提交wordcount到Storm集群
在上一篇博客中,我们通过Storm.Net.Adapter创建了一个使用Csharp编写的Storm Topology - wordcount.本文将介绍如何编写Java端的程序以及如何发布到测试的S ...
- javaweb项目打包成war包
从来没有想过web项目还能打包的,但是有要求,就不得不去实现,在网上找了一下,发现挺简单的. 首先是使用MyEclipse将web项目打包,如下图所示. 右键选中项目,选择export. 然后选择J2 ...
- Eclipse将引用了第三方jar包的Java项目打包成jar文件的两种方法
方案一:用Eclipse自带的Export功能 步骤1:准备主清单文件 “MANIFEST.MF”, 由于是打包引用了第三方jar包的Java项目,故需要自定义配置文件MANIFEST.MF,在该项目 ...
- 关于Java项目打包
可以选择以下几种办法: 一.使用Eclipse,右键项目导出jar. 二.使用Eclipse,右键项目导出runnable jar. 三.使用Eclipse 插件fat jar,导出可执行的jar包. ...
- Maven学习笔记-02-Maven项目打包配置与测试
一 Maven项目打包配置 1 为整个项目统一指定字符集 <properties> <project.build.sourceEncoding>UTF-</project ...
- C#项目打包后安装的桌面快捷方式图标怎么设置成自己想要的图标
#项目打包后安装的桌面快捷方式图标怎么设置成自己想要的图标 2012-08-25 09:11匿名 | 浏览 3286 次 C#编程 C#项目用vs2005自带的工具打包后安装的桌面快捷方式图标怎么设 ...
随机推荐
- js 显示当前系统时间
<div id="test"></div> <script > setInt ...
- hibernate的一级缓存和二级缓存详解
hibernate为我们提供了一级缓存和二级缓存,目的是为了减少应用程序对数据库的访问次数. 一级缓存: (1)所谓一级缓存就是session级别的缓存,当我们使用他的范围是当前的session,当s ...
- ArrayList和Vector的区别?HashMap和HashTable的区别?StringBuilder、StringBuffer和String的区别?
ArrayList和Vector的区别?从两个方面 1.同步性:ArrayList是线程不安全的,是非同步的:Vector是线程安全的,是同步的.(Java中线程的同步也就满足了安全性) 2.数值增长 ...
- js 检测客户端网速
<!doctype html> <html> <head> <meta http-equiv=Content-Type content="text/ ...
- Javascript文件加载:LABjs和RequireJS
传统上,加载Javascript文件都是使用<script>标签. 就像下面这样: <script type="text/javascript" src=&quo ...
- 安装Redis 非结构化数据库
1.官网下载安装包 1) 首先在Redis官网下载安装包: http://redis.io/download(redis-4.0.9.tar.gz) 2.在/usr/local/创建一个redi ...
- win10 64位 安装TensorFlow
.由于之前安装的是python2.7 ,tensorflow在windows下必须要python3 网上查了一下有三种方法2版本共存 1.不用Anaconda windows 安装python2 与p ...
- angularJs-未加载完成的页面显示混乱ng-bind
ng-bind 未初始化完成不加载数据,避免产生{{}}导致页面混乱 还是上边的例子,当前页面没有加载完成的时候,页面显示是不完整的会频繁的出现{{}}这样子的表达式语句,给用户的感觉很不和谐,所以使 ...
- 让loadrunner走下神坛(全)
作者: sunshinelius(转载请注明作者) Loadrunner无疑是一个强大有力的压力测试工具.它的脚本可以录制生成,自动关联:测试场景可以面向指标,多方监控:测试结果图表显示,拆分组合.相 ...
- BZOJ 1370 [Baltic2003]Gang团伙:并查集【虚点】
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1370 题意: 在某城市里住着n个人,任何两个认识的人不是朋友就是敌人,而且满足: (1)我 ...