在CentOS系统下编写GCC编译脚本可以帮助你自动化编译过程,提高开发效率。以下是一个基本的指南,帮助你编写一个简单的GCC编译脚本。
首先,创建一个新的脚本文件。你可以使用任何文本编辑器,比如vim、nano等。
vim compile.sh 在脚本文件中,编写以下内容:
#!/bin/bash # 设置编译器 CC=gcc # 设置编译选项 CFLAGS=-Wall -g # 设置源文件和目标文件 SRCS=main.c foo.c bar.c OBJS=$(SRCS:.c=.o) TARGET=myprogram # 编译规则 all: $(TARGET) $(TARGET): $(OBJS) $(CC) $(CFLAGS) -o $@ $^ %.o: %.c $(CC) $(CFLAGS) -c $< -o $@ # 清理规则 clean: rm -f $(OBJS) $(TARGET) # 帮助信息 help: @echo "Usage: make [target]" @echo "Targets:" @echo " all Compile the program" @echo " clean Remove object files and the executable" @echo " help Display this help message" #!/bin/bash: 指定脚本解释器为bash。CC=gcc: 设置编译器为gcc。CFLAGS=-Wall -g: 设置编译选项,-Wall表示显示所有警告,-g表示生成调试信息。SRCS=main.c foo.c bar.c: 列出所有源文件。OBJS=$(SRCS:.c=.o): 将源文件列表中的.c扩展名替换为.o,生成目标文件列表。TARGET=myprogram: 设置目标可执行文件的名称。all: $(TARGET): 定义默认目标为编译生成可执行文件。$(TARGET): $(OBJS): 定义如何生成目标文件。%.o: %.c: 定义如何从源文件生成目标文件。clean:: 定义清理规则,删除生成的目标文件和可执行文件。help:: 定义帮助信息。保存脚本文件并退出编辑器。如果你使用的是vim,可以按Esc键,然后输入:wq并按回车键。
使用chmod命令赋予脚本执行权限。
chmod +x compile.sh 现在你可以运行脚本来编译你的程序。
./compile.sh 如果你更喜欢使用Makefile来管理编译过程,可以创建一个Makefile文件,内容如下:
CC=gcc CFLAGS=-Wall -g SRCS=main.c foo.c bar.c OBJS=$(SRCS:.c=.o) TARGET=myprogram all: $(TARGET) $(TARGET): $(OBJS) $(CC) $(CFLAGS) -o $@ $^ %.o: %.c $(CC) $(CFLAGS) -c $< -o $@ clean: rm -f $(OBJS) $(TARGET) help: @echo "Usage: make [target]" @echo "Targets:" @echo " all Compile the program" @echo " clean Remove object files and the executable" @echo " help Display this help message" 然后你可以使用make命令来编译程序:
make 通过以上步骤,你可以在CentOS系统下编写一个简单的GCC编译脚本或使用Makefile来管理编译过程。