Ubuntu虚拟机运行Makefile文件

一、说明

以下以hello.c文件作为例子讲解,在虚拟机终端操作。
hello.c源程序如下:

#include <stdio.h>
int main()
{
	printf("hello everybody!\n");
	return 0;
}

Makefile文件程序如下:

hello: hello.c
        gcc hello.c -o hello

二、操作详情

  1. 进入虚拟机终端
  2. 进入一个合适的目录
  3. 输入hello.c源程序。
    (1)在终端输入:vi hello.c
    (2)然后在弹出的窗口里输入 i
    (3)再把hello.c 代码粘贴进去
    (4)按Esc,输入 :wq ,再按enter键,保存并退出。( :wq 会出现在左下角,注意别忘了冒 号!)
  4. 输入Makefile文件,操作同输入hello.c代码一样,只不过粘贴的代码换成Makefile的代码
  5. 编译程序:在终端输入:make,回车。
  6. 回车后,输入ls,第一列出现的是执行程序使用的文件名
  7. 执行程序:./hello
    注意:执行程序时的格式是:./文件名。
### 回答1: Ubuntu编写Makefile文件的步骤如下: 1. 创建一个新的文件夹,用于存放源代码和Makefile文件。 2. 在该文件夹中创建源代码文件,例如main.c。 3. 创建Makefile文件,命名为Makefile。 4. 在Makefile文件中定义变量,例如CC和CFLAGS。 5. 定义目标文件和依赖关系,例如main.o: main.c。 6. 定义生成可执行文件的规则,例如gcc -o main main.o。 7. 在终端中进入该文件夹,运行make命令生成可执行文件。 8. 运行生成的可执行文件,例如./main。 以上就是Ubuntu编写Makefile文件的基本步骤。 ### 回答2: Ubuntu是一种流行的Linux操作系统,而Makefile是一种对于软件项目的自动化构建非常重要的工具。在Ubuntu上编写Makefile文件需要遵循以下步骤: 1.打开终端,进入Makefile所在的目录。 2.创建一个名为Makefile的空文件,可以使用vim、nano等编辑器进行创建。 3.在Makefile文件中,首先需要声明目标文件(target)和相关依赖(dependencies),例如: target: dependency1 dependency2 … 在这个声明中,target表示所需生成的文件名,dependencies表示所依赖的文件列表,需要在生成target之前完成。 4.接下来需要编写生成目标文件的指令,例如: target: dependency1 dependency2 … command1 command2 … 在这个指令中,command1、command2等表示需要执行的命令,生成目标文件。 5.最后需要声明清理指令,以便在目录中执行make clean时能清理掉生成的中间文件,例如: clean: rm -f target 在这个指令中,rm -f target表示需要删除生成的目标文件target。 6.保存Makefile文件后,在终端中执行make指令即可生成目标文件。如果需要清理中间文件,则可执行make clean指令。 总之,在Ubuntu中编写Makefile文件需要对目标文件、依赖、指令等有比较全面的了解,并且需要遵循一定的规范和语法。只有这样,才能够更加高效地完成项目的自动化构建。 ### 回答3: 在Ubuntu上编写Makefile文件需要先安装gcc和make工具。gcc是GNU的C语言编译器,可以将C语言代码转化为可执行文件。而make是一个工程自动化构建工具,可以根据Makefile文件进行编译、链接、打包等操作。 1. 创建文件夹并在其中创建源文件Makefile文件 首先,在终端中创建一个新的文件夹,并在其中创建C语言源文件Makefile文件。可以使用以下命令: ``` mkdir my_project cd my_project touch main.c touch Makefile ``` 2. 编写源文件 在main.c文件中编写C语言源代码。这里给出一个简单的例子: ``` #include <stdio.h> int main() { printf("Hello, world!\n"); return 0; } ``` 3. 编写Makefile文件Makefile文件中,需要定义编译规则、链接规则等。以下是一个简单的Makefile文件: ``` CC = gcc CFLAGS = -Wall all: my_project my_project: main.o $(CC) main.o -o my_project main.o: main.c $(CC) -c $(CFLAGS) main.c clean: rm -f *.o my_project ``` 这个Makefile文件包含三个规则: * all: 定义了一个默认的目标,即执行make命令时,会默认执行该规则。在这里,该规则需要执行my_project规则。 * my_project: 定义了一个编译和链接规则。该规则需要将main.c文件编译为main.o目标文件,然后链接生成可执行文件my_project。 * main.o: 定义了一个编译规则,该规则需要将main.c文件编译为main.o目标文件。 还有一个clean规则,用于清除生成的目标文件和可执行文件。 4. 执行make命令 在终端中进入my_project文件夹,并执行make命令。如果没有错误,会生成可执行文件my_project。 ``` cd my_project make ``` 执行生成的可执行文件: ``` ./my_project ``` 输出结果为: ``` Hello, world! ``` 以上就是在Ubuntu上编写Makefile文件的基本过程。Makefile文件是非常灵活和强大的工具,可以实现复杂的编译和构建工作。掌握使用Makefile文件可以在工程开发中提高效率和可维护性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值