《嵌入式程序设计》第二周学习总结

《嵌入式程序设计》第二周学习总结

##教材学习内容总结 1.gcc的库选项 ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170429214523365-1535846712.png) 函数库分为静态库和动态库两种 静态库:一系列的目标文件(.o文件)和归档文件(文件名格式为libname.a)在编译某个程序时链接静态库,链接器将会搜索静态库,从中提取它所需要的目标文件并直接复制到该程序的可执行二进制文件(ELF格式文件)之中。 动态库(文件名格式为libname.so):在程序编译时并不会被链接到目标代码中,而是在程序运行时才被载入。 2.gcc 警告和出错选项 -w :关闭所有告警 -Wall:允许发出gcc提供的所有有用的报警信息 -werror:把所有的告警信息转化为错误信息,并在告警发生时终止编译过程 ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170430222517131-1408913333.png) 3.gdb的使用 (1)查看文件:l(list) (2)设置断点:b + 对应行号 (3)查看断点情况:info b (4)运行代码:r (5)查看变量值:p+变量值 (6)单步运行:n或s n:不会进入该函数 s:会进入该函数 (7)恢复程序运行:c (8)gdb的命令表 ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170430223351772-366578033.png) (9)gdb的功能 ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170430223504772-1613428689.png) 4.makefile ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170430222613600-1573180030.png) ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170430222822256-1239620542.png) (1)在mak(efile中的每一个comman前必须有"Tab"字符 (2)常见的预定义变量 ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170429222241240-992779163.png) (3)常见的自动变量 ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170429222336475-1816842248.png) (4)隐式规则 所有".o"文件都可以自动由".c"文件使用命令"$(cc) -c file.c -o file.o"来生成 (5)常见的隐式规则 ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170429222806053-1983828971.png) 5.make的命令行选项 ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170429223101756-824588093.png) 6.以下几种文件在执行make时将会被编译(重新编译) ![](http://images2015.cnblogs.com/blog/1150838/201704/1150838-20170430222959084-1250535841.png)

实验楼学习遇到的问题


解决方法

1.具体的编译动作。开头按tab键形成空格。
2.老师的命令存在错误gcc -lhello star.c -o mystar改为gcc star.c -lhello -o mystar就可以了

实验楼学习

实验1
实验报告
实验2
实验报告

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 15 20/20
第一周 200/200 2/2 1/1 vi的使用
第二周 1000/1200 3/7 7/8 gcc,gdb,makefile

参考资料

  • 《嵌入式Linux应用程序开发标准教程》
原文地址:https://www.cnblogs.com/qiaoye06/p/6786248.html