本周所学内容如下:
1.学会使用gcc编译器;
2.学会使用GDB调试器;
3.学会C程序的编写(包括系统调用和函数调用)
4.学会Makefile基本规则;
5.学会make命令的使用方法;
6.学会使用Makefile程序的编写。
7.使用gcc编译器编译C语言程序文件生成可执行文件的过程,是要经历四个相互关联的步骤:预处理、编译、汇编和链接。
8.gdb是GNU开源组织开发的一个强大的Linux下的程序调试工具,它主要完成:启动被调试程序,按照要求运行程序。让被调试的程序在指定的位置停住。当被调试程序停住时,可以检查被调试的状态和变量的值等内容。动态地改变被调试程序的运行环境等
9.Makefile是用于自动编译和链接的,一个工程有很多文件组成,每一个文件的改变都会导致工程的重新链接,但是不是所有的文件都需要重新编译,Makefile中纪录有文件的信息,在make时会决定在链接的时候需要重新编译哪些文件
本周实验内容如下:
1. 使用vi编辑hello.h、starfun.h、hello.c、star.c四个程序文件:
例如hello.h
2. 使用gcc编译器,编译程序
3.使用动态库
4.使用静态库
5. gdb调试器的使用
6. 编写包含多文件的Makefile
试验中遇到的问题如下:
1.
2.运行结果的图形只有一半(如gdb运行图)
3.
解决的方法如下:
1.将截图中的3.4行改为
sudo cp libhello.so /lib gcc star.c -lhello star.c -o mystar 3.第一个错误及时改正,因为实在/的目录下 所以vi hello.c前面需要加sudo 第二个错误将hello.h打成了hello.c 将stdio打成了hello通过第二次实验楼的实验,我发现做什么事都要细心,不然会浪费很多时间去解决麻烦。