add: 添加实训 '数据结构课程设计'
This commit is contained in:
52
PracticalTrain/DataStructure/Makefile
Normal file
52
PracticalTrain/DataStructure/Makefile
Normal file
@@ -0,0 +1,52 @@
|
||||
# Makefile for Bus Route Management System
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -Wall -Wextra -g -I./include
|
||||
LDFLAGS = -lm
|
||||
|
||||
# 目录
|
||||
SRC_DIR = src
|
||||
INC_DIR = include
|
||||
OBJ_DIR = obj
|
||||
BIN_DIR = bin
|
||||
DATA_DIR = data
|
||||
|
||||
# 源文件和目标文件
|
||||
SOURCES = $(wildcard $(SRC_DIR)/*.c)
|
||||
OBJECTS = $(SOURCES:$(SRC_DIR)/%.c=$(OBJ_DIR)/%.o)
|
||||
TARGET = $(BIN_DIR)/bus_system
|
||||
|
||||
# 默认目标
|
||||
all: directories $(TARGET)
|
||||
|
||||
# 创建必要的目录
|
||||
directories:
|
||||
@mkdir -p $(OBJ_DIR)
|
||||
@mkdir -p $(BIN_DIR)
|
||||
@mkdir -p $(DATA_DIR)
|
||||
|
||||
# 链接目标文件生成可执行文件
|
||||
$(TARGET): $(OBJECTS)
|
||||
$(CC) $(OBJECTS) -o $(TARGET) $(LDFLAGS)
|
||||
@cp -r $(DATA_DIR) $(BIN_DIR)
|
||||
@echo "build successful: $(TARGET)"
|
||||
|
||||
# 编译源文件为目标文件
|
||||
$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c
|
||||
$(CC) $(CFLAGS) -c $< -o $@
|
||||
|
||||
# 清理编译文件
|
||||
clean:
|
||||
rm -rf $(OBJ_DIR) $(BIN_DIR)
|
||||
@echo "clean over"
|
||||
|
||||
# 运行程序
|
||||
run: $(TARGET)
|
||||
@cp -r $(DATA_DIR) $(BIN_DIR)
|
||||
@cd $(BIN_DIR) && ./bus_system
|
||||
|
||||
# 安装数据文件(如果需要)
|
||||
install-data:
|
||||
@echo "请确保 data/ 目录包含 stations.csv 和 routes.csv"
|
||||
|
||||
.PHONY: all clean run directories install-data
|
||||
Reference in New Issue
Block a user