最新嵌入式Linux应用程序开发教程03-Linux下的C编程基础

上传人:宝路 文档编号:53448256 上传时间:2018-08-31 格式:PPT 页数:17 大小:746.47KB
返回 下载 相关 举报
最新嵌入式Linux应用程序开发教程03-Linux下的C编程基础_第1页
第1页 / 共17页
最新嵌入式Linux应用程序开发教程03-Linux下的C编程基础_第2页
第2页 / 共17页
最新嵌入式Linux应用程序开发教程03-Linux下的C编程基础_第3页
第3页 / 共17页
最新嵌入式Linux应用程序开发教程03-Linux下的C编程基础_第4页
第4页 / 共17页
最新嵌入式Linux应用程序开发教程03-Linux下的C编程基础_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《最新嵌入式Linux应用程序开发教程03-Linux下的C编程基础》由会员分享,可在线阅读,更多相关《最新嵌入式Linux应用程序开发教程03-Linux下的C编程基础(17页珍藏版)》请在金锄头文库上搜索。

1、嵌入式Linux应用程序开发标准教程,三 Linux下的C编程基础,第三章 Linux 下的C 编程基础 本章目标 熟悉Linux 系统下开发环境 熟悉gcc 编译器基本原理 熟练使用gcc 编译器常用选项 熟练使用gdb 调试技术 熟悉Makefile 基本原理及语法规范 熟练使用autoconf 和automake 生成Makefile,嵌入式Linux应用程序开发标准教程,3.1 Linux下C语言编程概述,3.1.1 C 语言简单回顾 ANSI C 硬件无关性 中级语言 结构化语言 功能齐全 可移植性强,编译过程示意图,嵌入式Linux应用程序开发标准教程,3.1 Linux下C语言编

2、程概述,3.1.2 Linux 下C 语言编程环境概述 编辑器 vi 编译链接器 gcc 调试器 gdb 项目管理工具 make,嵌入式Linux应用程序开发标准教程,3.3 gcc编译器,gcc编译器版本 GNU Compiler Collection http:/gcc.gnu.org GNU CC 4.6.2 (2011.10.26) GNU CC 4.6.3,GCC 4.3.0,GCC 2.95,July 31, 1999,GCC 3.0,June 18, 2001,GCC 3.2,August 14, 2002,GCC 3.3,May 13, 2003,December 3, 199

3、7,GCC 4.4.5,GCC 4.6.3,Oct 26, 2011,嵌入式Linux应用程序开发标准教程,3.3 gcc编译器,gcc编译环境 GNU CC ANSI C C、C+、Object C、Java、Fortran、Pascal,嵌入式Linux应用程序开发标准教程,3.3 gcc编译器,3.3.1 gcc 编译流程解析 gcc编译过程 格式: gcc 选项 源文件 选项 目标文件,Pre-processor (cpp / gcc -E),Compiler (cc1 / gcc -S),Assembler (as / gcc -c),Linker (ld),hello.c (tex

4、t),hello.i (text),hello.s (text),hello.o (binary),hello (binary),printf.o (binary),预处理:生成文件编译文件.i,编译:代码翻译成汇编语言编译文件.s,汇编:转成目标文件编译文件.o二进制代码,连接:默认使用动态库,生成可执行文件,嵌入式Linux应用程序开发标准教程,3.3 gcc编译器,3.3.2 gcc 编译选项分析 (1)总体选项,嵌入式Linux应用程序开发标准教程,3.3 gcc编译器,3.3.2 gcc 编译选项分析 (2)警告和出错选项,(3)优化选项 -On 来控制优化代码的生成,0、1、2、3

5、 调试的时候最好不使用任何优化选项,只有当程序在最终发行的时候才考虑对其进行优化,嵌入式Linux应用程序开发标准教程,3.4 gdb调试器,3.4.1 gdb 使用流程 gcc 编译过程一定要加上选项“-g” gdb 调试可执行文件 查看文件 l 设置断点 b n b n if var=20 查看断点情况 info b 运行代码 r 查看变量值 p + 变量名 单步运行 n s 恢复程序运行 c,嵌入式Linux应用程序开发标准教程,3.4 gdb调试器,3.4.2 gdb 基本命令 help 1工作环境相关命令 2设置断点与恢复命令 函数断点 条件断点 3gdb 中源码查看相关命令 4gd

6、b 中查看运行数据相关命令 5gdb 中修改运行参数相关命令 实验:用gdb调试程序的bug,P87,嵌入式Linux应用程序开发标准教程,3.5 Make工程管理器,自动编译管理器 通过读入Makefile 文件的内容来执行大量编译工作 用户只需编写一次简单的编译语句 3.5.1 Makefile 基本结构 Makefile 是Make 读入的唯一配置文件 需要由make工具创建的目标体(target),通常是目标文件或可执行文件 要创建的目标体所依赖的文件(dependency_file) 创建每个目标体时需要运行的命令(command),嵌入式Linux应用程序开发标准教程,3.5 Ma

7、ke工程管理器,3.5.1 Makefile 基本结构 Makefile 格式 target: dependency_filescommand Make 格式 make target 示例: hello.o: hello.c hello.hgcc c hello.c o hello.o make hello.o,嵌入式Linux应用程序开发标准教程,3.5 Make工程管理器,3.5.2 Makefile 变量 时间戳 make 允许在Makefile 中创建和使用变量 变量是在Makefile 中定义的名字,用来代替一个文本字符串,该文本字符串称为该变量的值 可以代替目标体、依赖文件、命令以

8、及makefile 文件中其他部分 两种变量定义方式 递归展开方式,格式为VAR=var 简单展开方式:定义格式为VAR:=var Make 中变量格式为$(VAR),嵌入式Linux应用程序开发标准教程,3.5 Make工程管理器,3.5.2 Makefile 变量 预定义变量,嵌入式Linux应用程序开发标准教程,3.5 Make工程管理器,3.5.2 Makefile 变量 Makefile中常见自动变量,嵌入式Linux应用程序开发标准教程,3.5 Make 工程管理器,3.5.3 Makefile 规则 1隐式规则 2模式规则 % 隐式规则目录,嵌入式Linux应用程序开发标准教程,3.6 Make工程管理器,3.5.4 Make管理器的使用 常用的命令行选项 实验:编写包含多文件的Makefile,P89,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号