基于Ubuntu的C语言编译以及Makefile方式编译

   日期:2020-09-27     浏览:168    评论:0    
核心提示:基于Ubuntu的C语言编译以及Makefile方式编译准备工作安装gccgcc编译编写一个主程序文件main1.c和子程序文件sub1.c新建文件main1.c新建文件sub1.c用gcc编译文件运行代码makefile编程新建文件makefile编译makefile运行代码准备工作下载并安装好Ubuntu64位,并打开终端。安装gccgcc一般是在安装完Ubuntu时默认自带安装在里面的,不需要重复安装检查是否安装了gcc输入命令:gcc --version即可检查是否安装了gcc如

基于Ubuntu的C语言编译以及Makefile方式编译

  • 准备工作
    • 安装gcc
  • gcc编译
    • 编写一个主程序文件main1.c和子程序文件sub1.c
      • 新建文件main1.c
      • 新建文件sub1.c
    • 用gcc编译文件
    • 运行代码
  • makefile编程
    • 新建文件makefile
    • 编译makefile
    • 运行代码
  • windows系统下编译上述程序

准备工作

下载并安装好Ubuntu64位,并打开终端。

安装gcc

gcc一般是在安装完Ubuntu时默认自带安装在里面的,不需要重复安装

检查是否安装了gcc

输入命令:

gcc --version

即可检查是否安装了gcc
如果显示未安装

1.安装gcc

输入命令:

sudo apt install gcc

等待安装gcc完成
2.安装build-essential
gcc同步使用需安装build-essential软件包来提供编译必要的软件包
输入命令:

sudo apt install build-essential

等待安装完成
到此准备工作已经完成

gcc编译

编写一个主程序文件main1.c和子程序文件sub1.c

新建文件main1.c

输入命令:

touch main1.c

即可创建一个名为main1.c的文件
输入命令:

vim main1.c

即可打开文件编辑

按I开始在光标处插入
输入代码:

#include<stdio.h>
int main()
{ 
	float c;
	c=x2x(100,2);
	printf("%f",c);
	printf("\n");
	return 0;
}

按ESC回到命令模式
输入:wq退出vim编辑器并保存

新建文件sub1.c

输入命令:

touch sub1.c

即可创建一个名为sub1.c的文件
输入命令:

vim sub1.c

即可打开文件编辑

按I开始在光标处插入
输入代码:

float x2x(int a,int b)
{ 
	float c;
	c=a-b;
	return c;
}

按ESC回到命令模式
输入:wq退出vim编辑器并保存

用gcc编译文件

输入命令:

gcc main1.c sub1.c

即可编译并生成一个可执行文件a.out

这里有一个警告是因为在主程序中没有x2x这个函数
只需要在main函数前声明一下
main1.c文件代码更改如下:

int x2x(int a,int b);
int main()
{ 
	float c;
	c=x2x(100,2);
	printf("%f",c);
	printf("\n");
	return 0;
}

此时再编译没有警告

运行代码

输入命令:

./a.out

即可运行代码
结果如下

makefile编程

在编写好main1.csub1.c之后

新建文件makefile

输入命令:

touch makefile

即可创建一个名为makefile的文件
输入命令:

vim makefile

即可打开文件编辑

按I开始在光标处插入
输入代码:

main1:main1.o sub1.o
	gcc -o main main1.o sub1.o
main1.o:main1.c
	gcc -c main1.c
sub1.o:sub1.c
	gcc -c sub1.c

按ESC回到命令模式
输入:wq退出vim编辑器并保存

编译makefile

输入命令:

make

生成文件main

运行代码

输入命令:

./main

即可运行代码
结果如下

windows系统下编译上述程序

软件:Microsoft Visual Studio Enterprise 2017
代码同上
编译并运行
结果如下

至此我们完成了在ubuntu下使用gcc编译和用makefile方式编译以及在Windows环境下编译并最终成功运行程序

  • 完成任务
 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服