嵌入式实验报告二.doc

嵌入式实验报告二.doc

ID:56920719

大小:20.00 KB

页数:2页

时间:2020-07-24

嵌入式实验报告二.doc_第1页
嵌入式实验报告二.doc_第2页
资源描述:

《嵌入式实验报告二.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、嵌入式实验报告二实验时间2013/6/9报告人一、实验目的:1.学习cygwin;2.通过上机实验,使学生验证、巩固和充实所学理论知识,加深对相关内容的理解,了解嵌入式Linux的工具链,掌握基于Linux的C程序设计。二、实验要求:1.安装cygwin;2.学习GCC的使用和Makefile的编写。3.编程实现文件拷贝功能。三、问题:1.简述Gcc的常用选项并举例说明。Gcc基本使用格式:$gcc[选项]<文件名>命令行中gcc表示我们是用gcc来编译我们的源程序,[选项]表示我们要求编译器给我们输出的文件为何种类型,相当于一种约束。常见选项:-o:将源文

2、件经过gcc处理过的结果输出,这个结果文件可能是预处理文件、汇编文件、目标文件或者最终的可执行文件。比如:gcchello.c–ohello把源文件hello.c经gcc编译后生成可执行的文件输出为hello-E:只激活源程序的预处理,这个不生成文件,你需要把它重新定向到一个输出文件里面。比如:gcc–Ehello.c–ohello.i把源文件hello.c经gcc预处理后的文件输出为hello.i。-c:只激活源程序的预处理,编译,和汇编,也就是他只把程序生成obj文件。比如:gcc–chello.c–ohello.o把源文件hello.c经gcc预处理,

3、编译,和汇编后的文件输出为hello.o。-S:只激活源程序的预处理和编译,就是指把文件编译成为汇编代码。比如:gcc–Shello.c–ohello.s把源文件hello.c经gcc预处理,编译后的文件输出为hello.s。-g:表示我们要求编译器在编译的时候提供我们以后对程序进行调试的信息。2.简述Makefile编写规则,举例说明。 makefile 编写规则: (1)以“#”开始的行为注释 (2)文件依赖关系为:target:components//表示的是依赖关系TABrule//编写规则,TAB表示那是一个TAB键例如有如下:/*main.c*/

4、#include"mytool1.h"#include"mytool2.h"intmain(intargc,char**argv){mytool1_print("hello");mytool2_print("hello");}/*mytool1.c*/#include"mytool1.h"voidmytool1_print(char*print_str){printf("Thisismytool1print%s",print_str);}/*mytool2.c*/#include"mytool2.h"voidmytool2_print(char*prin

5、t_str){printf("Thisismytool2print%s",print_str);}/*mytool1.h*/#ifndef_MYTOOL_1_H#define_MYTOOL_1_Hvoidmytool1_print(char*print_str);#endif/*mytool2.h*/#ifndef_MYTOOL_2_H#define_MYTOOL_2_Hvoidmytool2_print(char*print_str);#endif可以这样来编译gcc-cmain.cgcc-cmytool1.cgcc-cmytool2.cgcc-oma

6、inmain.omytool1.omytool2.o这样的话我们也可以产生main程序,而且也不时很麻烦在我们执行make之前,我们要先编写一个非常重要的文件——Makefile。对于上面的那个程序来说,可能的一个Makefile的文件是:#thisistheMakefileofmainmain:main.omytool1.omytool2.ogcc-omainmain.omytool1.omytool2.omain.o:main.cmytool1.hmytool2.hgcc-cmain.cmytool1.o:mytool1.cmytool1.hgcc-cm

7、ytool1.cmytool2.o:mytool2.cmytool2.hgcc-cmytool2.c

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。