一、思考题:
1、gcc -static的作用?
答:当gcc -static用于编译一个程序时,会使此程序静态编译(把动态库的函数和所依赖的任何东西,都编译进本程序),编译好后,文件会非常大,但是,运行时就不需要依赖任何动态库了。
2、三级优化,每级优化了什么?
答:
-O1:提供基础级别的优化,采用优化算法,减少生成代码的大小,降低执行代码的运行速度;
-O2:提供更高级的代码优化,采用几乎所有的目标配置支持的优化算法,提高目标代码的运行速度;
-O3:提供最高级的代码优化,采取更多向量化算法,提高代码的并行执行程度。
二、嵌入式开发工具之调试器:gdb
1、gdb简介:
gcc调试C程序时只能根据gcc编译时发出的错误警告进行修改,而gdb可以有更强的调试功能。gdb调试器是由GNU开发的一款调试器,它可以和Visual C++、Visual Basic等开发工具的调试器媲美。
2、gdb的主要功能:
①可以在指定的断点处让被调试程序停止
②启动被调试程序,可以按自己的意愿运行程序
③可以动态地改变程序的执行环境
3、gdb的使用:
①生成调试信息
在使用gdb调试器