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自带的工具打包后安装的桌面快捷方式图标怎么设 ...
随机推荐
- HDFS源码分析之数据块及副本状态BlockUCState、ReplicaState
关于数据块.副本的介绍,请参考文章<HDFS源码分析之数据块Block.副本Replica>. 一.数据块状态BlockUCState 数据块状态用枚举类BlockUCState来表示,代 ...
- linux下压缩成zip文件解压zip文件
linux zip命令的基本用法是: zip [参数] [打包后的文件名] [打包的目录路径] linux zip命令参数列表: -a 将文件转成ASCII模式 -F 尝试修复损坏 ...
- struts2 Eclipse 中集成strust2开发框架实例
下面通过建立一个小的实例具体来说明Eclipse 集成struts2,以下实例采用的为 struts2 版本为 struts2 2.2.3.1 为应用. 1. 下载struts2的开发包 第一步: 在 ...
- iOS block-base 动画简单用法+关键帧动画设置线性变化速度的问题
本文转载至 http://www.tuicool.com/articles/aANBF3m 时间 2014-12-07 20:13:37 segmentfault-博客原文 http://segm ...
- iOS:苹果企业证书通过网页分发安装app
本文转载至 http://blog.sina.com.cn/s/blog_6afb7d800101fa16.html 苹果的企业级证书发布的应用,是不用设备授权即可直接安装,并且不限设备上限.为了方便 ...
- spring boot 项目搭建时,各个依赖的作用
项目搭建页面 https://start.spring.io/ 各个依赖的作用 List of dependencies for Spring Boot 2.1.5.RELEASE Core DevT ...
- python知识点导图(搜集)
第一章 基本环境 第二章 内置类型 第三章 表达式 第四章 函数 第五章 迭代器 第六章 模块 第七章 类 第八章 异常 第九章 装饰器 第十章 描述符 第十一章 元类 第十二章 标准库 Re模块 附 ...
- STO到底是什么?
最近,链圈谈论最多的就是STO了,那STO到底是什么?现阶段发展得怎么样? 什么是STO STO英文全称Security Token Offering,即证券化通证发行,指在安全法律体系下受到约束的基 ...
- Tomcat实现多主多备
Nginx Upstream 实现简单双机主从热备 下面配置多主多从: upstream testproxy { server 127.0.0.1:8080; server 127.0.0.1:808 ...
- JS高级调试技巧:捕获和分析 JavaScript Error详解
前端工程师都知道 JavaScript 有基本的异常处理能力.我们可以 throw new Error(),浏览器也会在我们调用 API 出错时抛出异常.但估计绝大多数前端工程师都没考虑过收集这些异常 ...