当前位置: 首页 > news >正文

一个比较复杂的makefile工程例子

工程目录

.
├── inc
│   └── utils.h
├── makefile
├── obj
└── src├── main.c└── utils.c

文件内容

utils.h

#ifndef UTILS_H
#define UTILS_Hint add(int a, int b);#endif // UTILS_H

main.c

#include <stdio.h>
#include "utils.h"int main() {printf("Hello, World!\n");printf("Sum of 3 and 5 is: %d\n", add(3, 5));return 0;
}

utils.c

#include "utils.h"int add(int a, int b) {return a + b;
}

makefile

# Makefile for a simple C project# Compiler and flags
CC = gcc
CFLAGS = -Wall -I inc# Directories
SRC_DIR = src
OBJ_DIR = obj
INC_DIR = inc# Source files
SRC_FILES = $(wildcard $(SRC_DIR)/*.c)
# Object files
OBJ_FILES = $(patsubst $(SRC_DIR)/%.c,$(OBJ_DIR)/%.o,$(SRC_FILES))# Executable name
EXEC = app# Default target
all: $(EXEC)# Link the object files to create the executable
$(EXEC): $(OBJ_FILES)$(CC) -o $@ $^# Compile source files into object files
$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c$(CC) $(CFLAGS) -c $< -o $@# Clean up
clean:rm -f $(OBJ_DIR)/*.o $(EXEC)# Phony targets
.PHONY: all clean

make执行后

.
├── app
├── inc
│   └── utils.h
├── makefile
├── obj
│   ├── main.o
│   └── utils.o
└── src├── main.c└── utils.c

http://www.mrgr.cn/news/48014.html

相关文章:

  • 【C#】WPF设置Separator为垂直方向
  • Spring Boot 中 Map 的最佳实践
  • 攻防世界web第三题file_include
  • Substrate Saturday 回顾:如何利用 Polkadot Cloud 扩展 Solana 网络服务?
  • 低代码企业管理的革命:Microi吾码产品深度测评
  • java web mybatis-puls
  • this,this指向
  • 在Stable Diffusion WebUI中安装SadTalker插件时几种错误提示的处理方法
  • 直流有刷电机驱动芯片:【TOSHIBA:TB6612】
  • Linux基础命令groupmod详解
  • 使用LlamaFactory进行模型微调
  • 低功耗
  • 多人播报配音怎么弄?简单4招分享
  • 【C++学习】核心编程之内存分区模型、引用和函数提高(黑马学习笔记)
  • 简单解析由于找不到xinput1_3.dll,无法继续执行代码的详细解决方法
  • 图的深度优先遍历的非递归算法
  • 服务端测试开发必备的技能:Mock测试!
  • 半周期检查-下降沿发上升沿采
  • AI语音助手在线版本
  • 数据结构与算法(八)循环链表
  • onnx代码解读
  • 摩托车一键启动智能钥匙提高了便捷性和安全性
  • 多元线性回归:机器学习中的经典模型探讨
  • HttpPost 类(构建 HTTP POST 请求)
  • 基于Springboot+Vue的网上订餐系统(含源码数据库)
  • 光伏“地图导航”:光照、政策、电价一目了然