Linux 编译环境

Similar documents
说 明 为 了 反 映 教 运 行 的 基 本 状 态, 为 校 和 院 制 定 相 关 政 策 和 进 行 教 建 设 与 改 革 提 供 据 依 据, 校 从 程 资 源 ( 开 类 别 开 量 规 模 ) 教 师 结 构 程 考 核 等 维 度, 对 2015 年 春 季 期 教 运 行 基

《C语言基础入门》课程教学大纲

Microsoft Word - 第3章.doc

I

第 一 部 分 MagiCAD for Revit 安 装 流 程

修改版-操作手册.doc

登录、注册功能的测试用例设计.doc

( ) 信 号 与 系 统 Ⅰ 学 科 基 础 必 修 课 教 周 2016 年 06 月 13 日 (08:00-09:35) ( )

深圳市新亚电子制程股份有限公司

中 国 软 科 学 年 第 期!!!

 编号:

Cybozu Garoon 3 管理员手册

目 录 一 系 统 访 问... 1 二 门 户 首 页 申 报 用 户 审 核 用 户... 2 三 系 统 登 录 用 户 名 密 码 登 录 新 用 户 注 册 用 户 登 录 已 注 册 用

评 委 : 李 炎 斌 - 个 人 技 术 标 资 信 标 初 步 审 查 明 细 表 序 号 投 标 单 位 投 标 函 未 按 招 标 文 件 规 定 填 写 漏 填 或 内 容 填 写 错 误 的 ; 不 同 投 标 人 的 投 标 文 件 由 同 一 台 电 脑 或 同 一 家 投 标 单

<443A5C6D B5C30312EB9A4D7F7CEC4B5B55C30322EBACFCDACCEC4B5B55C C30342EC8CBC9E7CCFC5C31332ECFEEC4BFC5E0D1B55C E30385C322EB2D9D7F7CAD6B2E12E646F63>

18 上 报 该 学 期 新 生 数 据 至 阳 光 平 台 第 一 学 期 第 四 周 至 第 六 周 19 督 促 学 习 中 心 提 交 新 增 专 业 申 请 第 一 学 期 第 四 周 至 第 八 周 20 编 制 全 国 网 络 统 考 十 二 月 批 次 考 前 模 拟 题 第 一 学

何 秋 琳 张 立 春 视 觉 学 习 研 究 进 展 视 觉 注 意 视 觉 感 知

目 录 第 一 章 博 星 卓 越 电 子 商 务 营 销 策 划 实 践 平 台 硬 件 使 用 介 绍... 3 第 二 章 博 星 卓 越 电 子 商 务 营 销 策 划 实 践 平 台 管 理 员 端 功 能 使 用 介 绍 系 统 管 理 员 登 陆 班

定 位 和 描 述 : 程 序 设 计 / 办 公 软 件 高 级 应 用 级 考 核 内 容 包 括 计 算 机 语 言 与 基 础 程 序 设 计 能 力, 要 求 参 试 者 掌 握 一 门 计 算 机 语 言, 可 选 类 别 有 高 级 语 言 程 序 设 计 类 数 据 库 编 程 类

白皮书

(Microsoft Word - NCRE\314\345\317\265\265\367\325\37313\324\27221\272\3051.doc)

云信Linux SSH认证代理用户手册

评 委 : 徐 岩 宇 - 个 人 技 术 标 资 信 标 初 步 审 查 明 细 表 序 号 投 标 单 位 投 标 函 未 按 招 标 文 件 规 定 填 写 漏 填 或 内 容 填 写 错 误 的 ; 不 同 投 标 人 的 投 标 文 件 由 同 一 台 电 脑 或 同 一 家 投 标 单

<433A5C446F63756D656E E E67735C41646D696E F725CD7C0C3E65CC2DBCEC4CFB5CDB3CAB9D3C3D6B8C4CFA3A8BCF2BBAFA3A95CCAB9D3C3D6B8C4CF31302D31392E646F63>

第 期 李 伟 等 用 方 法 对 中 国 历 史 气 温 数 据 插 值 可 行 性 讨 论

GB

正 规 培 训 达 规 定 标 准 学 时 数, 并 取 得 结 业 证 书 二 级 可 编 程 师 ( 具 备 以 下 条 件 之 一 者 ) (1) 连 续 从 事 本 职 业 工 作 13 年 以 上 (2) 取 得 本 职 业 三 级 职 业 资 格 证 书 后, 连 续 从 事 本 职 业

目 录 关 于 图 标... 3 登 陆 主 界 面... 3 工 单 管 理... 5 工 单 列 表... 5 搜 索 工 单... 5 工 单 详 情... 6 创 建 工 单... 9 设 备 管 理 巡 检 计 划 查 询 详 情 销 售 管

¹ º ¹ º 农 业 流 动 人 口 是 指 户 口 性 质 为 农 业 户 口 在 流 入 地 城 市 工 作 生 活 居 住 一 个 月 及 以 上 的 流 动 人 口 非 农 流 动 人 口 是 指 户 口 性 质 为 非 农 户 口 在 流 入 地 城 市 工 作 生 活 居 住 一 个

<4D F736F F D20BFC9B1E0B3CCD0F2BFD8D6C6CFB5CDB3C9E8BCC6CAA6B9FABCD2D6B0D2B5B1EAD7BC2E646F63>

3 复 试 如 何 准 备 4 复 试 成 绩 计 算 5 复 试 比 例 6 复 试 类 型 7 怎 么 样 面 对 各 种 复 试 04 05

第3章 创建数据库

第2章 数据类型、常量与变量

龚 亚 夫 在 重 新 思 考 基 础 教 育 英 语 教 学 的 理 念 一 文 中 援 引 的 观 点 认 为 当 跳 出 本 族 语 主 义 的 思 维 定 式 后 需 要 重 新 思 考 许 多 相 连 带 的 问 题 比 如 许 多 发 音 的 细 微 区 别 并 不 影 响 理 解 和

火车浏览器脚本制作教程

HSK( 一 级 ) 考 查 考 生 的 日 常 汉 语 应 用 能 力, 它 对 应 于 国 际 汉 语 能 力 标 准 一 级 欧 洲 语 言 共 同 参 考 框 架 (CEF) A1 级 通 过 HSK( 一 级 ) 的 考 生 可 以 理 解 并 使 用 一 些 非 常 简 单 的 汉 语

生产支援功能 使用说明书(IP-110 篇)

目 录 1 简 介 1 2 产 品 规 格 1 3 配 置 前 提 1 4 配 置 环 境 服 务 器 软 件 2 5 配 置 指 导 组 网 拓 扑 测 试 步 骤 移 除 虚 拟 机 删 除 虚 拟 机

随着执业中医师资格考试制度的不断完善,本着为我校中医学专业认证服务的目的,本文通过对我校中医类毕业生参加2012年和2013年的中医执业医师考试成绩及通过率、掌握率进行分析,并与全国的平均水平进行差异比较分析,以此了解我校执业中医师考试的现状,进而反映我校中医类课程总体教学水平,发现考核知识模块教学中存在的不足,反馈给相关学院和教学管理部门,以此提高教学和管理水平。

导 数 和 微 分 的 概 念 导 数 的 几 何 意 义 和 物 理 意 义 函 数 的 可 导 性 与 连 续 性 之 间 的 关 系 平 面 曲 线 的 切 线 和 法 线 导 数 和 微 分 的 四 则 运 算 基 本 初 等 函 数 的 导 数 复 合 函 数 反 函 数 隐 函 数 以

ICS 35

Microsoft Word - GT21L16S2W简要说明V3.7.doc


全国建筑市场注册执业人员不良行为记录认定标准(试行).doc

国家职业标准:网络课件设计师

中 中 中 中 部 中 岗 位 条 件 历 其 它 历 史 师 地 理 师 生 物 师 体 与 健 康 师 从 事 中 历 史 工 从 事 中 地 理 工 从 事 中 生 物 工 从 事 中 体 与 健 康 工 2. 课 程 与 论 ( 历 史 ); 2. 科 ( 历 史 )


<4D F736F F D C4EAB9A4B3CCCBB6CABFCAFDD1A7D7A8D2B5BFCEBFBCCAD4B4F3B8D9D3EBD2AAC7F3>

课程类 别

马 克 思 主 义 公 正 观 的 基 本 向 度 及 方 法 论 原 则!! # #

0 年 上 半 年 评 价 与 考 核 细 则 序 号 部 门 要 素 值 考 核 内 容 考 核 方 式 考 核 标 准 考 核 ( 扣 原 因 ) 考 评 得 3 安 全 生 产 目 30 无 同 等 责 任 以 上 道 路 交 通 亡 人 事 故 无 轻 伤 责 任 事 故 无 重 大 质 量

微软用户

自 服 务 按 钮 无 法 访 问 新 系 统 的 自 服 务 页 面 因 此 建 议 用 户 从 信 网 中 心 ( 主 页, 右 下 角 位 置 的 常 用 下 载, 或 校 园 网 用 户 自 服 务 ( 首 页

抗 日 战 争 研 究 年 第 期

教师上报成绩流程图

采 取 行 动 的 机 会 90% 开 拓 成 功 的 道 路 2

单片机与接口技术课程考核改革方案.doc

2006年顺德区高中阶段学校招生录取分数线

浙江省网上政务大厅


物 流 从 业 人 员 职 业 能 力 等 级 证 书 分 为 四 个 级 别, 分 别 为 初 级 助 理 级 中 级 和 高 级 ; 采 购 从 业 人 员 职 业 能 力 等 级 证 书 分 为 三 个 级 别, 分 别 为 中 级 高 级 和 注 册 级 请 各 有 关 单 位 按 照 通

附 件 : 上 海 市 建 筑 施 工 企 业 施 工 现 场 项 目 管 理 机 构 关 键 岗 位 人 员 配 备 指 南 二 一 四 年 九 月 十 一 日 2

4 进 入 交 互 区 设 置 的 组 件 管 理, 在 组 件 管 理 中, 教 师 可 以 选 择 课 程 空 间 中 的 所 有 组 件, 并 通 过 点 击 启 用 或 不 启 用 选 定 组 件 在 课 程 空 间 中 的 显 示 5 进 入 工 作 室 管 理 的 工 作 室 首 页,

 

3 月 30 日 在 中 国 证 券 报 上 海 证 券 报 证 券 时 报 证 券 日 报 和 上 海 证 券 交 易 所 网 站 上 发 出 召 开 本 次 股 东 大 会 公 告, 该 公 告 中 载 明 了 召 开 股 东 大 会 的 日 期 网 络 投 票 的 方 式 时 间 以 及 审

Template BR_Rec_2005.dot

<4D F736F F D20B9D8D3DAB0BABBAAA3A8C9CFBAA3A3A9D7D4B6AFBBAFB9A4B3CCB9C9B7DDD3D0CFDEB9ABCBBE C4EAC4EAB6C8B9C9B6ABB4F3BBE1B7A8C2C9D2E2BCFBCAE92E646F6378>

工 程 勘 察 资 质 标 准 根 据 建 设 工 程 勘 察 设 计 管 理 条 例 和 建 设 工 程 勘 察 设 计 资 质 管 理 规 定, 制 定 本 标 准 一 总 则 ( 一 ) 本 标 准 包 括 工 程 勘 察 相 应 专 业 类 型 主 要 专 业 技 术 人 员 配 备 技 术

网络保险箱客户端使用手册

一 公 共 卫 生 硕 士 专 业 学 位 论 文 的 概 述 学 位 论 文 是 对 研 究 生 进 行 科 学 研 究 或 承 担 专 门 技 术 工 作 的 全 面 训 练, 是 培 养 研 究 生 创 新 能 力, 综 合 运 用 所 学 知 识 发 现 问 题, 分 析 问 题 和 解 决

<4D F736F F D C3E6CFF2B6D4CFF3A3A8B5DAC8FDD5C220C0E0CCD8D0D4A3A92E646F63>

世华财讯模拟操作手册

第三章 作业

Microsoft Word - Disclose.doc

<4D F736F F D20416E64726F CAD6BBFABCE0BFD8BFCDBBA7B6CBCAB9D3C3CAD6B2E15F56322E302E646F63>

moza_ctc_64021.pdf

学 年 第 二 学 期 集 中 考 试 安 排 (18 周 ) 考 试 日 期 :6 月 27 日 星 期 一 8:10-9:50 第 二 公 共 教 学 楼 A 区 A 高 等 数 学 ( 理 二 2) 复 材 材 料 科 学 与 工 程

<4D F736F F D D323630D6D0B9FAD3A6B6D4C6F8BAF2B1E4BBAFB5C4D5FEB2DFD3EBD0D0B6AF C4EAB6C8B1A8B8E6>

Microsoft Word - 第7章 图表反转形态.doc

全国教师资格认定管理信息系统

抗 战 时 期 国 民 政 府 的 银 行 监 理 体 制 探 析 % # % % % ) % % # # + #, ) +, % % % % % % % %

上海工程技术大学教学管理工作流

目 录 页 1. 欢 迎 使 用 网 上 预 约 面 谈 访 问 系 统 新 用 户 新 用 户 登 入 帐 户 程 序 启 动 网 上 预 约 面 谈 访 问 帐 户 核 对 帐 户 的 地 址 资 料

Transcription:

Linux 编 译 环 境 Amlogic Beijing Zhouzhi 2009-12-7

主 题 基 本 目 录 结 构 和 功 能 Kernel 目 录 结 构 Common 目 录 结 构 Packages 目 录 结 构 Ui_ref 目 录 结 构 主 要 编 译 命 令 工 具 链

基 本 目 录 结 构 Common Kernel ROOT Packages Busybox UI_ref

基 本 目 录 结 构 [Kernel]: 内 核 代 码 [Busybox]: Linux 下 简 单 基 本 的 工 具 集 [Packages]: 应 用 程 序 软 件 包, 包 括 基 本 的 开 源 库, 和 我 们 测 试 代 码, 演 示 程 序 ; [Common]:Makefile 和 编 译 工 具 以 及 不 同 开 发 板 的 配 置 代 码 ; [ui_ref]: 用 户 开 发 目 录

Kernel 目 录 结 构 [Arch] 架 构 相 关 代 码, 包 括 arm,mips,sh,spark,x86, [Block] 块 设 备 基 础 代 码 ; [Crypto] 加 密 相 关 [Documentation]kernel 相 关 文 档 [Drivers] 驱 动 相 关 代 码 [Fs] 文 件 系 统 相 关 代 码 [Include] 共 享 头 文 件 目 录 [Init] 系 统 系 统 代 码 [Ipc]IPC 通 信,Message Queue 等 相 关 代 码 [Kernel] 内 核 进 程 管 理 相 关 目 录

Kernel 目 录 结 构 [Lib] 基 本 库 代 码, 标 准 C 库 的 内 核 实 现,memcpy 等 ; [Mm] 内 存 管 理 相 关 代 码 ; [Net] 网 络 核 心 代 码 ; [Samples] 内 核 模 块 模 块 的 一 些 示 例 代 码 ; [Scripts] 编 译 内 核 的 一 些 基 本 脚 本 ; [Security] 内 核 安 全 性 代 码 ; [Sound] 音 频 处 理 的 核 心 和 音 频 驱 动 代 码 ; [Tools] 基 本 工 具 (amlogic 专 用 ); [Usr] 制 作 文 件 系 统 代 码 ; [Virt] 虚 拟 机 相 关 代 码 ;

Kernel/ARCH/ARC 目 录 ARC 架 构 相 关 代 码 [Arch-apollo-h]:Apollo-h 的 相 关 基 本 硬 件 初 始 化 ; [Kernel]: 中 断, 线 程, 硬 件 Cache 等 [Mm]: 内 存 和 MMU,Cache 的 硬 件 管 理 [Proc/arc700]: 硬 件 启 动 代 码, 中 断 向 量 表, 系 统 调 用 向 量 表 ; [Boot]: 用 来 生 成 bootloader 识 别 的 Image; [BSP]: 开 发 板 相 关 目 录 的 一 个 连 接, 在 编 译 时 生 成

Kernel/include 目 录 [asm-arc]:arc 平 台 的 头 文 件 目 录 ; [Asm-generic]: 公 共 的 硬 件 平 台 头 文 件 ; [Linux]:linux 系 统 头 文 件 ; [Net]: 网 络 相 关 头 文 件 ; [Sound]: 声 音 相 关 头 文 件 ; [Asm/arc/arch]:Amlogic-arc 芯 片 的 头 文 件 ( 驱 动 直 接 引 用, 它 能 根 据 芯 片 型 号 自 动 引 用 apollo 或 apollo-h 的 头 文 件 ); [Asm/arc/archapollo]:apollo 系 列 头 文 件 ( 为 方 便 移 植, 不 能 直 接 引 用 ); [Asm/arc/arch-apollo-h]:apollo-h 系 列 的 cpu 头 文 件 ( 为 方 便 移 植, 不 能 直 接 引 用 );

Kernel/Driver 目 录 这 个 目 录 里 面 用 来 存 放 各 种 驱 动 ; 我 公 司 的 驱 动 全 部 放 在 amloigc 目 录 里 面, 请 驱 动 开 发 按 照 这 个 结 构 存 放, 同 时 在 Makefile 里 面 的 位 置 决 定 启 动 的 顺 序, 非 启 动 时 间 需 要, 请 不 要 把 驱 动 提 前 ; [Kernel/Driver /amlogic] 目 录 的 基 本 驱 动 : [Amports]: 视 频 解 码 驱 动 ; [Audiodsp]: 音 频 dsp 的 控 制 驱 动 ; [Cardreader]:sd,mmc 等 卡 的 驱 动 ; [Display]OSD,GE2D 等 驱 动 ; [HDMI]:HDMI 接 口 驱 动 ; [I2C]:I2c 驱 动 ; [Input]: 输 入 设 备 驱 动, 现 在 主 要 有 遥 控 设 备 驱 动 ; [Nand]:nand flash 驱 动 ; [Net]: 网 络 设 备 驱 动, 主 要 有 以 太 网 ; [Sound]:alsa 音 频 驱 动,( 音 频 需 要 驱 动 启 动 后 启 动, 这 是 因 为 音 频 的 核 心 在 driver 之 后 启 动 ) [Uart]: 串 口 设 备 驱 动, 有 硬 件 串 口 驱 动 和 虚 拟 串 口 驱 动 (vuart), 虚 拟 串 口 可 以 用 来 连 接 Metaware; [USB]:USB 的 host 控 制 器 驱 动 ;

Common 目 录 ROOT COMMON trunk BSP Makefiles Tools [BSP] 不 同 开 发 板 对 应 的 目 录 初 始 化 目 录, 主 要 是 pinmux, 内 存 资 源 的 分 配 ; 基 本 命 名 规 则 : 芯 片 型 号 _ 内 存 配 置 ( 如 :7266_32x2) [Makefiles] 编 译 系 统 的 Makefiles, 编 译 时 会 引 用 这 些 Makefile 来 进 行 编 译 ; [Makfile.common]: 总 控 Makefile; [Makfile.kernel]: 编 译 内 核 使 用 的 makefile; [Makefile.busybox]: 编 译 busybox 使 用 的 Makefile; [Makefile.debug]: 调 式 时 使 用 的 Makefile; [Makefile.packages]: 编 译 packages 使 用 的 makefile;(makefile.common 引 用 ) [packages.rules]:packages 目 录 引 用 的 Makefile, 分 析 Config.in 文 件 的 配 置, 并 对 不 同 的 packages 编 译 进 行 管 理 ; [package.rules]: 具 体 每 个 包 可 以 引 用 的 makefile, 里 面 有 基 本 的 功 能, 可 以 减 少 重 复 的 代 码 ; [Tools] 编 译 和 生 成 Image 时 使 用 的 工 具 和 脚 本 ;

Packages 目 录 Packages 是 软 件 包 的 集 合 包 括 了 zlib, jpeg, freetype, directfb, microwindow, alsa-lib, amplayer 等 ; Config.in #p.menuconfig 读 取 的 包 的 配 置 文 件, 具 体 和 busybox 下 的 config.in 相 同 ; 添 加 新 的 packages 时 需 要 修 改 ; Makefile #Config.in 对 应 的 Makefile, 添 加 新 的 packages 时 需 要 修 改 ;

Packages 目 录 具 体 软 件 包 的 Makefile 实 现 以 Zlib-1.2.3 的 Makefile 为 例 P_FILE=zlib-1.2.3.tar.gz # 软 件 包 的 文 件 名 FILE_DIR=zlib-1.2.3 # 解 压 后 的 文 件 目 录 名 P_URL=http://www.zlib.net/zlib-1.2.3.tar.gz # 下 载 该 包 的 外 部 url 地 址 ; P_GET_CMD=${HTTP_GET} # 获 取 该 包 的 命 令, 一 般 不 需 要 修 改 ; P_GET_FLAGS=${HTTP_GET_FLAGS} # 获 取 该 包 命 令 的 使 用 参 数 ; TAR_CMD=${CMD_GZ} # 解 压 包 的 命 令, 可 以 使 用 CMD_GZ 或 CMD_BZ2; 也 可 以 使 用 其 他 标 准 命 令 ; TAR_FLAGS=${CMD_GZ_FLAGS} # 解 压 包 命 令 使 用 的 参 数 ; 和 TAR_FLAGS 对 应 ;

Packages 目 录 TRY_MAX=2 # 如 果 获 取 不 到 该 包 是, 最 大 重 试 次 数 DEPENDS= 隔 开 # 他 依 赖 的 软 件 包, 如 果 有 多 个 软 件 包, 只 需 要 空 格 PATCH_FILE = # 这 个 包 需 要 patch 文 件 名, 由 于 部 分 包 直 接 编 译 无 法 生 成 有 问 题, 需 要 打 上 Patch; 一 般 patch 文 件 就 放 在 当 前 目 录 ; CONFIG_FLAGS= --host=$(host_name) --prefix=${prefix} --withsoftfloat --disable-python --disable-alisp --enable-shared --with-versioned=no \ --with-alsa-devdir=/dev # 编 译 该 包 的 命 令 选 项, 具 体 参 考 该 包 的 help 文 件 ; P_FILE_F=${PKG_DIR}/${P_FILE} BUILD_DIR=${PKG_BUILD_DIR}/${FILE_DIR}.PHONY:all config before_cmd all:before_cmd config make -C ${BUILD_DIR} # 编 译 make install # 安 装

Packages 目 录 install: # 安 装 make -C ${BUILD_DIR} install.phony:configure configure:unzip_file #make configure cd ${BUILD_DIR}/&& \./configure ${CONFIG_FLAGS} CONFIG_GEN_FILE=${BUILD_DIR}/config.mak #configure 生 成 的 文 件 CONFIG_DEP_FILE=${BUILD_DIR}/configure #config 依 赖 文 件 UNZIP_GEN_FILE=${BUILD_DIR}/configure # 解 压 生 成 文 件 UNZIP_DEP_FILE=${P_FILE_F} # 解 压 依 赖 文 件 include $(MAKEFILES_DIR)/package.rules

Ui_ref 目 录 Bld_7266_h_xxx ROOT Ui_ref trunk rootfs Build 这 个 是 参 考 的 项 目 目 录, 他 通 过 引 用 common,kernel,packages 等 目 录 来 实 现 项 目 的 管 理 ; [env26.mk/env.mk]: 用 来 配 置 环 境, 指 定 所 引 用 的 package,kernel,common 和 rootfs 输 出 的 目 录 ; [bld_xxxx]: 开 发 扳 编 译 目 录, 所 有 编 译 命 令 都 将 在 这 个 目 录 操 作 ; [rootfs]: 参 考 的 rootfs 目 录, 这 个 目 录 里 面 主 要 有 用 来 参 考 的 /etc/ 配 置 文 件 等 ; [build]: 编 译 packages 等 文 件 的 临 时 目 录, 用 来 存 放 编 译 出 来 的 临 时 文 件 ;

Env.mk 的 设 置 Sample:Ui_ref/trunk/env26.mk ROOT_DIR=${TOP_DIR}/../../.. # 下 面 引 用 COMMON_DIR=${ROOT_DIR}/common # 指 定 common 目 录 ROOTFS_DIR=./rootfs # 指 定 输 出 的 rootfs 目 录. 默 认 在 bld_xxx 目 录 里 面, 最 好 指 定 一 个 绝 对 目 录, 以 方 便 调 试, 并 且 切 换 目 录 后 不 会 存 在 问 题 ; KERNEL_DIR= $(ROOT_DIR)/kernel_26 # 指 定 内 核 原 码 目 录 BUSYBOX_DIR=${ROOT_DIR}/busybox # 指 定 busybox 原 码 目 录 PACKAGES_DIR=${ROOT_DIR}/packages # 指 定 packages 目 录 DEFAULT_BOOT_CMD= root=/dev/nfs nfsroot=10.68.11.57:/home/amlogicbj/rootfs/testfs rw noinitrd init=/init ip=10.68.11.72:10.68.11.1:10.68.11.1:255.255.255.0:target:eth0:off console=ttys0,115200 mac=00:11:22:12:43:22 # 指 定 内 核 默 认 的 启 动 参 数 ( 没 有 使 用 uboot 等 loader 引 导 时 有 效, 调 试 用 ) PACKAGES_DIR_URL # 指 定 packages 包 的 地 址 ; 如 果 没 有 指 定, 会 从 openlinux.amlogic.com 下 载, 通 过 指 定 能 够 加 快 下 速 度, 方 便 内 部 开 发 使 用 ;

Bld_XXXX 目 录 的 基 本 配 置 Makefile TOP_DIR=${PWD} SRC_DIR=${TOP_DIR}/../src include../env26.mk ## 指 定 引 用 的 环 境 设 置 文 件 目 录 ; BSP_DIR=${COMMON_DIR}/trunk/bsp/7266_h_64x2 ## 指 定 开 发 板 对 应 的 bsp 目 录 RELEASE_DIR=${TOP_DIR}/build BUSYBOX_CONFIG=${TOP_DIR}/busybox_config KERNEL_CONFIG=${TOP_DIR}/kernel_config PACKAGE_CONFIG=${TOP_DIR}/packages_config START_INITRAMFS=no ## 是 否 制 作 ramfs[yes/no],, 如 果 制 作,vmlinux 里 面 就 存 在 一 个 ramfs 的 ; 会 在 启 动 的 时 候 自 己 加 栽 到 内 存 ; SRC_ROOT_FS=../rootfs/ ##rootfs 源, 主 要 存 放 着 配 置 文 件, 编 译 busybox 的 时 候 会 从 这 里 copy 到 env.mk->rootfs 指 定 的 目 录 里 面 ; COMMON_SVN_PATH= ## 源 码 对 应 的 svn 地 址 ; KERNEL_SVN_PATH=https://10.8.10.5/svn/Project_ARCLinux/trunk/kernel/v2.6.26 BUSYBOX_SVN_PATH=https://10.18.11.250/svn/model_linux/busybox/trunk PACKAGES_SVN_PATH=https://10.18.11.250/svn/model_linux/packages include ${COMMON_DIR}/trunk/Makefiles/Makefile.common ## 引 用 主 Makefile

Bld_XXXX 目 录 的 基 本 配 置 Wmake.bat:windows 下 面 调 试 使 用 的 批 处 理 文 件 ; Makefile: 项 目 编 译 目 录, 定 义 了 具 体 引 用 的 代 码 地 址, 板 子 相 关 设 置 ; Kernel_config: 内 核 的 配 置 文 件 ; Busybox_config: busybox 配 置 文 件 ; Packages_config: packages 配 置 文 件 ;

主 要 编 译 命 令 所 有 编 译 调 试 命 令 都 在 ui_ref/trunk/bld_xxx 下 面 执 行, 具 体 哪 个 bld 要 根 据 您 使 用 的 板 子 决 定 ; Make # 编 译 全 部, 包 括 kernel, busybox, packages 等 ; Make root # 编 译 文 件 系 统 ; Make yaffs # 把 文 件 系 统 打 包 生 成 yaffs 文 件 系 统 的 映 像 rootfs.yaffsimage, 并 保 存 在 build 目 录 ;

主 要 编 译 命 令 编 译 内 核 Make k.menuconfig # 配 置 内 核, 具 体 配 置 方 法 和 直 接 配 置 内 核 一 致, 同 时 也 可 以 使 用 make k.config, make k.xconfig 等 ; Make k # 编 译 内 核 ; Make k.modules # 编 译 内 核 模 块, 并 自 动 安 装 到 指 定 的 ROOTFS/lib/modules 目 录 ; Make k.clean # 删 除 内 核 编 译 的 临 时 文 件, 如 果 内 核 做 了 大 的 改 动 或 更 新, 需 要 这 么 做, 以 防 止 播 放 部 分 没 有 重 新 编 译 导 致 问 题 ;

主 要 编 译 命 令 编 译 busybox Make b.menuconfig # 配 置 busybox Make b # 编 译 busybox Make b.xxx # 调 用 busybox 内 部 的 命 令, 包 括 clean,install; 等

主 要 编 译 命 令 编 译 packages( 软 件 包 ) Make p.menuconfig # 配 置 软 件 包 Make p # 编 译 软 件 包 ; Make p.clean # 删 除 编 译 生 成 的 文 件. Make p.distclean # 删 除 整 个 编 译 生 成 的 packages 目 录 ; Make p.${packages_name}.all # 编 译 具 体 的 软 件 包, 这 个 PACKAGES_NAME 和 软 件 包 的 目 录 名 一 致 ;

工 具 链 Arc linux 使 用 了 两 套 工 具 链, 分 别 用 来 编 译 内 核 和 应 用 程 序 ; Arc-elf32- : 基 于 new-lib 的 工 具 链, 这 个 库 不 是 基 于 linux 系 统 调 用 开 发 的, 主 要 用 来 编 译 非 linux 标 准 的 应 用 程 序 ; 由 于 系 统 调 用 不 一 致, 也 不 能 用 来 编 译 应 用 程 序 ; 我 们 一 般 用 来 编 译 linux 内 核 ; Arc-linux-uclibc- : 基 于 uclibc 和 linux 的 编 译 工 具 链, 可 以 用 来 编 译 linux 下 的 应 用 程 序 ;

工 具 链 Arc-elf32-gcc Arc-elf32-g++; Arc-linux-uclibc-gcc Arc-linux-uclibc-g++ 三 个 编 译 器 都 可 以 用 来 编 译 C 和 C++ 代 码 ; GCC 一 般 用 来 编 译 c 代 码, 同 时 也 可 以 用 来 编 译 C++ 代 码 ; G++ 一 般 用 来 编 译 C++ 代 码, 编 译 C 代 码 的 使 用 会 自 动 调 用 GCC;

工 具 链 其 他 主 要 工 具, 都 省 略 了 前 缀,arc-elf32- 和 arclinux-uclib-, 如 果 不 使 用 前 缀, 就 是 执 行 系 统 本 身 的 工 具 链, 工 具 的 功 能 一 样 : readelf #elf 格 式 分 析 工 具, 可 以 查 看 section, 符 号 表 等 ; Objdump # 反 编 译 工 具, 可 以 用 来 反 编 译 elf 格 式 文 件, 分 析 编 译 结 果 代 码 ; Objcopy #elf 文 件 转 换 工 具, 可 以 用 来 生 成 bin 文 件, 添 加, 删 除 symble,section 等 ; As # 汇 编 代 码 编 译 工 具 Ld # 链 接 器, 链 接.o 文 件

工 具 链 Ar # 库 制 作 工 具, 可 以 把 多 个.o 文 件 制 作 为 静 态 库, 也 可 以 把 静 态 库 分 解 为 多 个.o 文 件 ; Ranlib # 跟 新 静 态 库 的 索 引 和 符 号 表, 加 快 静 态 库 的 访 问 速 度, 一 般 在 ar 后 使 用 ; Nm #elf 文 件 符 号 表 分 析 工 具,linux 下 面 的 System.map 就 是 使 用 nm 来 生 成 的 ; Strip # 删 除 elf 文 件 里 面 的 symbols 和 sections; Size # 显 示 elf 程 序 中 各 段 数 据 大 小 Run # 简 单 的 虚 拟 机, 可 以 执 行 elf-gcc 编 译 出 来 的 简 单 文 件 ;

工 具 链 Gdb #gnu 调 试 工 具, 能 够 单 步, 断 点 执 行, 可 以 分 析 堆 栈, 局 部 全 局 变 量 等 ; Insight #gdb 的 图 形 版 本, 实 际 上 是 insight 界 面 调 用 gdb 来 完 成 调 试 工 作 ; Gcov # 代 码 覆 盖 率 分 析 ; Gprof # 代 码 执 行 次 数 统 计 工 具, 可 以 用 来 优 化 代 码 ;

Thanks Mail:Zhi.zhou@amlogic.com msn:rising_o@msn.com Skype:rising_o