linux 编写makefile文件运行项目
时间: 2024-05-08 12:21:01 浏览: 9
Makefile 是一种类似于脚本的文件,用于自动化编译和构建项目。下面是一个简单的 Makefile 的示例,用于编译一个包含两个源文件的 C++ 程序:
```
CC=g++
CFLAGS=-c -Wall
LFLAGS=
SRC=main.cpp functions.cpp
OBJ=$(SRC:.cpp=.o)
EXECUTABLE=myprogram
all: $(SRC) $(EXECUTABLE)
$(EXECUTABLE): $(OBJ)
$(CC) $(LFLAGS) $(OBJ) -o $@
.cpp.o:
$(CC) $(CFLAGS) $< -o $@
clean:
rm -rf *.o $(EXECUTABLE)
```
在 Makefile 中,每一行都是一个命令。Makefile 中使用变量来保存编译器和编译选项。上面的 Makefile 中,`CC` 变量是编译器,`CFLAGS` 变量是编译选项。`SRC` 变量保存了源文件名,`OBJ` 变量保存了编译后的目标文件名,`EXECUTABLE` 变量保存了最终的可执行文件名。
Makefile 中最重要的部分是规则。规则指定了如何将目标文件构建出来,以及如何从源代码生成目标文件。在上面的 Makefile 中,规则 `all` 指定了需要编译的源文件和目标文件,以及最终生成的可执行文件。`$(EXECUTABLE)` 规则指定了如何将目标文件链接为最终的可执行文件。`.cpp.o`规则指定了如何从源代码生成目标文件的方式。
要运行项目,只需要在命令行中输入 `make` 命令即可。如果成功编译,将会生成可执行文件 `myprogram`。如果需要清除已编译的文件,可以运行 `make clean` 命令。