目录
一、 Ubuntu系统下软件的在线查找和安装
在ubuntu下打开终端
输入 sudo apt-get install vim安装vim编辑器
sudo apt-get install gcc安装gcc编译器
注意:在安装软件包时如果出现Could not get lock /var/lib/dpkg/lock-frontend,经多种方法试验后,解决方法如下:
从应用程序菜单中打开软件和更新
打开后,将其更改为立即显示(display immediately),它便不会在后台运行sudo apt-get upgrade命令。
然后输入用户密码以让更改生效。重新启动Ubuntu计算机即可。
二、在Ubuntu系统下用C语言编写一个程序
1.输入vim hello.c创建hello.c C语言文件
2.进入编辑界面输入代码
#include<stdio.h>
int main()
{
printf(hello world\n);
return 0;
}
3.完成代码后,按下Esc键,再输入:wq保存文件
4.在命令窗口输入gcc hello.c -o hello进行编译
5.在命令窗口输入./hello运行程序
三、 分别在Ubuntu系统和windows系统编译并运行
(一)在Ubuntu系统用gcc 命令行方式编译
用相同的方法分别创建,编译main1.c程序和一个sub1.h子函数`
main1.c
#include<stdio.h>
#include"sub1.h"
int main()
{
int a,b;
float y;
a=2,b=4; //定义x和y变量
y=x2x(a,b); //输出处理后的值
printf("%f",y);
return 0;
}
sub1.h子函数
#include<stdio.h>
float x2x(int a,int b)
{
float x;
x=a+b;
return x; //返回运算后的值
}
在命令窗口输入./main1运行程序
得出结果。
(二)在windows系统用Dev-C++编译
四、 在Ubuntu系统下用Makefile方式编程主程序
1、在命令窗口输入 gedit makefile创建makefile文件。
2、编写文件并保存
3、在命令行窗口输入make
4、输入gcc main1.o -o main进行编译
5、输入./main查看运行结果,结果相同
6、执行完后输入 make clean 清除编译产生的目标文件(.o)
注意:Makefile的命令行,开头必须用tab键,用空格会引起编码格式错误,系统报错。
五、总结
(1)gcc是编译器 而make不是 make是依赖于Makefile来编译多个源文件的工具 在Makefile里同样是用gcc(或者别的编译器)来编译程序.
(2)gcc是编译一个文件,make是编译多个源文件的工程文件的工具。
make是一个命令工具,是一个解释makefile中指令的命令工具。
(3)make就是一个gcc/g++的调度器,通过读入一个文件(默认文件名为Makefile或者makefile),执行一组以gcc/g++为主的shell命令序列。输入文件主要用来记录文件之间的依赖关系和命令执行顺序。
(4)gcc是编译工具;make是定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译;
也就是说make是调用gcc的。
经过初步对Ubuntu,gcc直接编译和Makefile进行编译方式的练习,我学习到了gcc对C语言的编译流程,也了解到了gcc,Makefile二者的联系与区别。gcc 和 makefile 方式都可生成可执行文件,但当编译文件较多、需要经常维护等等时,makefile 方式更具有优势。经过不断的试错修改,注意到了很多细节,也加深了对C语言源程序编译成可执行文件过程的理解。
参考:
https://cloud.tencent.com/developer/article/1343055
https://blog.csdn.net/qq_45237293/article/details/108741893