在Ubuntu系统中,使用GCC编译C或C++程序通常涉及编写一个简单的Makefile或者直接在命令行中输入编译命令。下面我将分别介绍这两种方法。
方法1:使用Makefile
- 创建一个文本文件,命名为
Makefile(注意没有文件扩展名)。 - 在Makefile中编写以下内容:
对于C程序(假设源文件名为main.c):
# 编译器
CC=gcc
# 编译选项
CFLAGS=-Wall -g
# 目标文件
TARGET=myprogram
# 源文件
SRCS=main.c
# 默认目标
all: $(TARGET)
# 链接目标文件生成可执行文件
$(TARGET): $(SRCS)
$(CC) $(CFLAGS) -o $(TARGET) $(SRCS)
# 清理生成的文件
clean:
rm -f $(TARGET)
对于C++程序(假设源文件名为main.cpp):
# 编译器
CXX=g++
# 编译选项
CXXFLAGS=-Wall -g
# 目标文件
TARGET=myprogram
# 源文件
SRCS=main.cpp
# 默认目标
all: $(TARGET)
# 链接目标文件生成可执行文件
$(TARGET): $(SRCS)
$(CXX) $(CXXFLAGS) -o $(TARGET) $(SRCS)
# 清理生成的文件
clean:
rm -f $(TARGET)
- 在终端中,切换到Makefile所在的目录。
- 运行
make命令来编译程序。如果一切顺利,你将看到生成的可执行文件。 - 要清理编译过程中生成的文件,可以运行
make clean。
方法2:直接使用命令行
对于C程序(假设源文件名为main.c):
gcc -Wall -g -o myprogram main.c
对于C++程序(假设源文件名为main.cpp):
g++ -Wall -g -o myprogram main.cpp
这些命令会在当前目录下生成名为myprogram的可执行文件。-Wall选项启用所有警告,-g选项包含调试信息。
如果你有多个源文件,可以将它们全部列出在命令行中,例如:
gcc -Wall -g -o myprogram main.c file1.c file2.c
或者对于C++程序:
g++ -Wall -g -o myprogram main.cpp file1.cpp file2.cpp
以上就是在Ubuntu中使用GCC编译脚本的基本方法。根据你的具体需求,你可能需要添加更多的编译选项和链接库。