linux

GCC编译脚本怎么编写

小樊
41
2025-09-22 17:38:41
栏目: 编程语言

编写一个GCC编译脚本可以帮助你自动化编译过程,特别是在处理多个源文件或需要设置特定编译选项时。以下是一个简单的示例,展示了如何编写一个GCC编译脚本。

假设我们有一个项目,包含以下文件:

我们将这些文件编译成一个可执行文件 myprogram

步骤1:创建源文件

首先,创建上述文件并添加一些简单的代码。

main.c

#include <stdio.h>
#include "utils.h"

int main() {
    printf("Hello, World!\n");
    print_message();
    return 0;
}

utils.c

#include <stdio.h>
#include "utils.h"

void print_message() {
    printf("This is a utility function.\n");
}

utils.h

#ifndef UTILS_H
#define UTILS_H

void print_message();

#endif

步骤2:编写编译脚本

创建一个名为 build.sh 的脚本文件,并添加以下内容:

#!/bin/bash

# 设置编译器
CC=gcc

# 设置编译选项
CFLAGS=-Wall -g

# 设置源文件和目标文件
SRCS=main.c utils.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)

.PHONY: all clean

步骤3:运行编译脚本

  1. 确保脚本文件 build.sh 具有执行权限:

    chmod +x build.sh
    
  2. 运行脚本:

    ./build.sh
    

这将编译源文件并生成可执行文件 myprogram

解释

通过这种方式,你可以轻松地管理和编译多个源文件,并且可以通过修改脚本来自定义编译过程。

0
看了该问题的人还看了