Make Target Options

make命令如下:

make <Tab> <Tab>  /*列出所有支持的目标(命令行输入make, 再按两下Tab键)*/
make <Target> /*编译特定的目标*/
make -jN /*使用多核CPU构建*/

下面列出了一些最常用的目标:

make defconfig_public_linux  /*使用默认的kernel配置*/
make menuconfig_public_linux /*显示kernel配置界面*/
make menuconfig /*显示amboot配置界面*/
make show_configs /*显示所有配置文件*/
make sync_build_mkcfg /*准备 make 文件和 AmbaConfig 文件*/
make amboot /*Build Amboot*/
make linux /*Build Linux Kernel*/
make prepare_private_drivers /*Prepare private drivers*/
make build_private_drivers /*Build private drivers*/
make clean_private_drivers /*Clean private drivers*/
make clean /*Delete out directory*/
make distclean /*Delete all temporary objects in compilation*/
make rtsp_server /*Compile the program rtsp_server*/

编译

进入到 h2_linux_sdk/ambarella/boards/h2_everest 目录下,依次执行以下步骤,即可编译出所需image。

# make sync_build_mkcfg            /* prepare the make file and AmbaConfig file*/
# make h2everest_broadcast_config /*生成amboot的 .config 文件*/
# make defconfig_public_linux /*使用默认的kernel配置(ambarella_h2_defconfig)*/
# make -j8

修改amboot配置

在执行完'make h2everest_broadcast_config'后,amboot的配置文件.config生成,需要对amboot的配置进行修改的话,执行:

# make menuconfig

执行完以后 'make -j8'编译即可。

可以把修改生成的.config拷贝成h2everest_XXX_config,以后直接执行:

make h2everest_XXX_config

来生成amboot的.config,非常方便。

修改kernel配置

进入到 h2_linux_sdk/ambarella/boards/h2_everest目录下,

1.clean up the old target template
# make clean    
2.apply the default kernel configuration
# make defconfig_public_linux
3.display and modify the kernel configuration according to the requirement
# make menuconfig_public_linux  
4.create the specific kernel configuration
# mkdir config/kernel
# cp -dpRf ../../out/h2_everest/kernel/linux-.4_everest/.config config/kernel/ambarella_XXX_defconfig
# make menuconfig
[*] Ambarella Linux Configuration --->
(ambarella_XXX_defconfig) Linux Default Configuration
5.rebuild the firmware
# make -j8

注意:

[*] Ambarella Linux Configuration  --->
(ambarella_XXX_defconfig) Linux Default Configuration
  • 执行'make menuconfig'可以选择默认的kernel配置文件,上述选的就是ambarella_XXX_defconfig文件;
  • 'make defconfig_public_linux'执行的操作是拷贝ambarella_XXX_defconfig到ambarella/out/h2_everest/kernel/linux-4.4_everest/下,拷贝后的文件为.config;
  • 'make menuconfig_public_linux'命令对kernel配置进行修改,此时修改的配置文件是ambarella/out/h2_everest/kernel/linux-4.4_everest/.config

Ambarella SDK build 步骤解析的更多相关文章

  1. Unity中加入Android项目的Build步骤

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 简介: 有的项目需要在Android中加入Unity功能,例如ANDROID应用中嵌入Un ...

  2. Intel Media SDK安装步骤

    !!!(gcc/g++版本要在4.8以上,本人使用的是5.4版本) 要先安装依赖,按以下步骤依次执行 1.LIBVA git clone https://github.com/intel/libva. ...

  3. 同人逼死官方系列!基于sddc 协议的SDK框架 sddc_sdk_lib 解析

    基于sddc 协议的SDK框架 sddc_sdk_lib 解析 之前在移植 libsddc 库的时候感觉官方 demo 太低效了( ̄. ̄),复制粘贴代码好累,而且写出一个BUG,其他复制的代码整个就裂 ...

  4. java连接mysql数据库详细步骤解析

    java连接mysql数据库详细步骤解析      第一步:下载一个JDBC驱动包,例如我用的是:mysql-connector-java-5.1.17-bin.jar      第二步:导入下载的J ...

  5. SDK Build Tools revision (19.0.3) is too low for project Min

    SDK Build Tools revision (19.0.3) is too low for project Min(转)       如果你正在使用Android Studio工具进行开发,且将 ...

  6. Error:The SDK Build Tools revision (19.0.3) is too low for project ':app'. Minimum required is 19.1.

    今天更新了一下AndroidStudio, 结果编译程序时报错, 错误如下: Error:The SDK Build Tools revision (19.0.3) is too low for pr ...

  7. Dynamics 365检查工作流、SDK插件步骤是否选中运行成功后自动删除系统作业记录

    本人微信公众号:微软动态CRM专家罗勇 ,回复298或者20190120可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!我的网站是 www.luoyong.me . 系统 ...

  8. Android sdk platform,sdk tools,sdk Build tools,sdk platform tools 的关系

    1. sdk platform 简单理解为系统版本 最新级别: 28:Android 9 27:Android 8.1 26:Android 8.0 25:Android 7.1 24:Android ...

  9. TeamCity Build 步骤的执行策略

    TeamCity 会根据前一个 build 步骤的返回状态和当前的 build 状态来综合判断是否运行下一个 build 步骤.1 失败状态 当满足下面条件时 build 步骤的状态被确定为失败: b ...

随机推荐

  1. hdu3535题解

    hdu3535:http://acm.hdu.edu.cn/showproblem.php?pid=3535 该题是非常全面的一道分组背包问题.其实理解了最多一个的分组背包问题,解题起来也是很简单的. ...

  2. SQL基本操作——通配符

    SQL 通配符:在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符.SQL 通配符必须与 LIKE 运算符一起使用.在 SQL 中,可使用以下通配符: 通配符 描述 % 替代一个或多个字符 ...

  3. WebAPI PUT,DELETE请求404

  4. ES6 中set的用法

  5. Android 动态设置 layout_centerInParent

    RelativeLayout.LayoutParams rp = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutPa ...

  6. linux中的umask命令

    转载:http://blog.51cto.com/1123697506/882064 一 权限掩码umask umask是chmod配套的,总共为4位(gid/uid,属主,组权,其它用户的权限),不 ...

  7. 8.1.3 Row对象

    假设数据以下面的方式创建并插入数据: import sqlite3 conn = sqlite3.connect(r'D:\test.db') c = conn.cursor() c.execute( ...

  8. 【BestCoder Round #93 1001】MG loves gold

    [题目链接]:http://acm.hdu.edu.cn/showproblem.php?pid=6019 [题意] 每次选择一段连续的段,使得这一段里面没有重复的元素; 问你最少选多少次; [题解] ...

  9. 倍增/线段树维护树的直径 hdu5993/2016icpc青岛L

    题意: 给一棵树,每次询问删掉两条边,问剩下的三棵树的最大直径 点10W,询问10W,询问相互独立 Solution: 考虑线段树/倍增维护树的直径 考虑一个点集的区间 [l, r] 而我们知道了有 ...

  10. CTF密码学总结

    CTF中那些脑洞大开的编码和加密 摘自:https://www.cnblogs.com/mq0036/p/6544055.html 0x00 前言 正文开始之前先闲扯几句吧,玩CTF的小伙伴也许会遇到 ...