700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 在ubuntu系统下使用gcc和makefile实现c语言程序的编译运行

在ubuntu系统下使用gcc和makefile实现c语言程序的编译运行

时间:2018-10-13 20:50:37

相关推荐

在ubuntu系统下使用gcc和makefile实现c语言程序的编译运行

目录

前言

一、使用gcc命令完成编译c语言程序

1.编写c语言程序

main1.c

sub1.h

sub1.c

2.gcc命令编译

步骤一命令:gcc -c sub1.c作用:将sub1.c程序转换为目标文件sub1.o

步骤二命令:gcc main1.c sub1.o -o main1作用:编译main1.c文件为目标文件main1.o,然后链接sub1.o目标文件生成main1可执行文件

步骤三执行./main1命令,即可执行编译生成的main1程序

3.在window下编译运行

二、使用Makefile方式编程主程序

1.编写makefile

2.编译运行上述c语言程序

总结

前言

本文目的是通过在Ubuntu16.04系统上编译多个C程序来熟悉在Linux系统上编写C程序的操作。相关程序名称分别为main1.c、sub1.c、sub1.h;采用以下两种方式进行编译,第一种是直接使用gcc在命令行编译运行,第二种是使用Makefile文件,并在命令行编译运行。

一、使用gcc命令完成编译c语言程序

1.编写c语言程序

新建实验文件夹zy;

main1.c

#include "sub1.h"int main(){int x=6,y=9;printf("%.5f\n",x2x(x,y));//保留小数点后5位return 0; }

在gedit中编写效果:

sub1.h

#ifndef __SUB1_H#define __SUB1_H#include<stdio.h>float x2x(int a,int b); //计算a除以b加0.00001的结果#endif

sub1.c

#include "sub1.h"float x2x(int a,int b){float m;m=(float)a/b+0.00001;return m;}

2.gcc命令编译

步骤一

命令:gcc -c sub1.c

作用:将sub1.c程序转换为目标文件sub1.o

步骤二

命令:gcc main1.c sub1.o -o main1

作用:编译main1.c文件为目标文件main1.o,然后链接sub1.o目标文件生成main1可执行文件

步骤三

执行./main1命令,即可执行编译生成的main1程序

如图:

3.在window下编译运行

使用devc++编译运行;

直接运行失败

将main.c中的sub1.h修改为sub1.c

编译运行成功!

二、使用Makefile方式编程主程序

1.编写makefile

格式:

目标文件:[相依文件]

<tab>命令[注释]

<tab>命令[注释]

2.编译运行上述c语言程序

总结

在ubuntu16.04环境下,本次实验使用gcc对c语言进行编译,我更加了解了gcc对c语言程序的编译过程,并发现了在window下编译过程的差别。还学习使用了makefile与make来完成了c语言程序的编译,在面对多个程序的链接编译时makefile是一个好用的工具,能达到快速编译的目的。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。