实验四 Linux系统搭建C语言编程环境

实验四 Linux系统搭建C语言编程环境

项目 内容
这个作业属于哪个课程 Linux应用与系统
这个作业的要求在哪里 作业要求链接
学号-姓名 17041520-王世腾
作业学习目标 1.Linux系统下C语言开发环境搭建
2.学习Linux系统环境C语言开发过程

1.安装C语言开发环境

(1)安装C语言编译环境


(2)查看gcc版本

	GCC(GNU Compiler Collection,GNU编译器套件)是由GNU开发的编程语言译器。GNU编译器套件包括C、C++、 Objective-C、 Fortran、Java、Ada和Go语言前端,也包括了这些语言的库(如libstdc++,libgcj等。)

(3)查看make版本

GNU Make是一种工具,用于从程序的源文件控制程序的可执行文件和其他非源文件的生成。

Make了解如何从名为makefile的文件构建程序的知识,该文件列出了每个非源文件以及如何从其他文件计算它。编写程序时,应为其编写一个makefile,以便可以使用Make来构建和安装程序。

2.简单C语言练习

(1)通过man命令查看帮助文档

man命令使用
man命令:可以通过一些参数,快速查询linux帮助手册,并且格式化显示。
使用语法:
man [-adfhktwW] [section] [-M path] [-P pager] [-S list] [-m system] [-p string] title..

(2)命令行模式简单C语言编译链接等操作

1.通过vim编辑器编写一个最简单的C语言程序,如写一个输出自己学号的程序


2.预编译

我们可以用vim打开test.i文件来查看文件内容,也可以用命令来查看

3.编译

同样的我们可以用vim打开test.s文件来查看内容,也可以用命令,如cat

因为预编译和编译得到的文件都是文本文件,所以我们可以用vim打开查看文件内容。


4.汇编

这里生成的不是文本文件了,是二进制文件,我们可以通过objdump命令来反汇编该文件来分析文件内
容 。

5.链接

可执行文件是二进制文件,同样需要用objdump命令来反汇编该文件分析文件内容

objdump -d test

6.运行


(3)多文件编译

在该文件夹下面创建5个文件,文件名分别如下:

每个文件内容如下

a)main.c文件


b)my1.c文件


c)my1.h文件


my2.c,my2.h与my1.c,my1.h内容和功能类似只是函数名不同而已

对于多文件编译,我们可以一次编译链接生成可执行文件,也可以分别编译每个C文件,

最后再进行链接得到可执行文件。


请说明两种方法的区别?

答:
第一种方法:一次编译链接直接生成可执行文件,不产生目标文件;
第二种方法:分别对每个C文件进行编译产生目标文件,之后再进行链接得到可执行文件。

接下来我们编写一个简单的Makefile,通过make工具帮助我们进行编译。在当前文件夹编写一个Makefile文件

posted @ 2020-03-29 13:34  山有树兮丶  阅读(303)  评论(0)    收藏  举报