Makefile工程简单模板

news/2025/11/9 23:03:34/文章来源:https://www.cnblogs.com/lsksp/p/19205514

一个简单的Makefile工程模板

# 定义目标文件名
TARGET		  	?= bsp# 编译器选项
CROSS_COMPILE 	?= arm-linux-gnueabihf-
CC 				:= $(CROSS_COMPILE)gcc
LD				:= $(CROSS_COMPILE)ld
OBJCOPY 		:= $(CROSS_COMPILE)objcopy
OBJDUMP 		:= $(CROSS_COMPILE)objdump# 头文件目录
INCDIRS 		:= imx6ul \bsp/clk \bsp/led \bsp/delay 
# 源文件目录		   			   
SRCDIRS			:= project \bsp/clk \bsp/led \bsp/delay INCLUDE			:= $(patsubst %, -I %, $(INCDIRS))# 寻找所有的 .c 和 .s 源文件
SFILES			:= $(foreach dir, $(SRCDIRS), $(wildcard $(dir)/*.S))
CFILES			:= $(foreach dir, $(SRCDIRS), $(wildcard $(dir)/*.c))# 所有源文件的文件名(使用notdir去掉路径)
SFILENDIR		:= $(notdir  $(SFILES))
CFILENDIR		:= $(notdir  $(CFILES))# .o文化对应目录
SOBJS			:= $(patsubst %, obj/%, $(SFILENDIR:.S=.o))
COBJS			:= $(patsubst %, obj/%, $(CFILENDIR:.c=.o))# 所有.o文件的集合
OBJS			:= $(SOBJS) $(COBJS)# 指定搜索路径
VPATH			:= $(SRCDIRS).PHONY: clean$(TARGET).bin : $(OBJS)$(LD) -Timx6ul.lds -o $(TARGET).elf $^$(OBJCOPY) -O binary -S $(TARGET).elf $@$(OBJDUMP) -D -m arm $(TARGET).elf > $(TARGET).dis$(SOBJS) : obj/%.o : %.S$(CC) -Wall -nostdlib -c -O2  $(INCLUDE) -o $@ $<$(COBJS) : obj/%.o : %.c$(CC) -Wall -nostdlib -c -O2  $(INCLUDE) -o $@ $<clean:rm -rf $(TARGET).elf $(TARGET).dis $(TARGET).bin $(COBJS) $(SOBJS)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/960817.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实用指南:Visual Studio下载安装教程(非常详细)从零基础入门到精通,看完这一篇就够了

实用指南:Visual Studio下载安装教程(非常详细)从零基础入门到精通,看完这一篇就够了pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !importan…

升鲜宝 供应链SCM 一体化自动化部署体系说明

升鲜宝 SCM 一体化自动化部署体系说明🚀 升鲜宝 SCM 一体化自动化部署体系说明 作者:杭州升鲜宝科技有限公司 版本:v1.0 日期:2025-11-09🧱 一、部署体系总览 本部署体系用于在服务器上一键完成: • ✅ 前端自…

折腾笔记[37]-使用ML.NET进行文本情感分类

使用.NET框架的ML.NET深度学习框架训练数据集并进行文本情感分类.摘要 使用.NET框架的ML.NET深度学习框架训练数据集并进行文本情感分类. 关键信息.net8原理简介 ML.NET简介 [https://www.nuget.org/packages?page=2&…

从API调用到智能体编排:GPT-5时代的AI开发新模式 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Spring AI Alibaba 项目源码学习(一)-整体介绍

Spring AI Alibaba 项目目录结构说明 请关注微信公众号:阿呆-bot 项目概述 Spring AI Alibaba 是一个多模块 Maven 项目,采用分层架构设计,从底层到上层依次为:Graph 核心运行时、Agent 框架、Studio 应用和 Sprin…

技术架构师到CIO如何转型

目录第一阶段:从“技术实现者”到“业务理解者”——支撑“提高运营效率(操作层)”修炼重点:第二阶段:从“业务支持者”到“管理赋能者”——支撑“加强运营管控(管理层)”修炼重点:第三阶段:从“管理赋能者”…

Layout

1,gen4速度或以上的差分需要在经过阻容焊盘,芯片pin脚,连接器pin脚挖空参考层再隔层补地,改善阻抗。

OS 任务调度

1 什么是任务调度?操作系统为什么需要它? 任务调度是决定哪个任务在何时使用CPU的过程。因为CPU核心数量远少于需要运行的任务(进程/线程)数,需要通过调度来公平、高效地分配计算资源,实现多任务并发/并行的假象…

【Linux】初始线程 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

对于多个图片如何喂给大模型

对于多个图片如何喂给大模型解决办法就是是使用claude和gemini识别图片内容格式化输出后用纯文字输出

Spring Boot + JWT + jjwt 建立前后端分离登录认证(详细教程 + 工具类封装)入门教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

python:pip配置国内源

一,创建目录 说明:是在用户的home目录下创建 liuhongdi@liuhongdi-pc:~$ mkdir .pip liuhongdi@liuhongdi-pc:~$ cd .pip liuhongdi@liuhongdi-pc:~/.pip$ vi pip.conf 二,在配置文件中添加国内源 pip.conf的内容: …

nest目录结构

NestJS目录结构 1. NestJS目录结构 user: nestjs如何组织目录结构assistant: 当然!在 NestJS 中,组织良好的目录结构对于项目的可维护性、可扩展性和团队协作至关重要。虽然没有唯一的“正确”答案,但社区已经形成了…

第十一届中国大学生程序设计竞赛 女生专场(CCPC 2025 Womens Division)题解

目录Problem A. 环状线Problem B. 爬山Problem C. 短视频Problem D. 网络改造Problem E. 购物计划Problem F. 丝之歌Problem G. 最大公约数Problem H. 缺陷解码器Problem I. 调色滤镜Problem J. 后鼻嘤Problem K. 左儿…

什么?从分子变化到四大关键特征解析就是重排反应

什么?从分子变化到四大关键特征解析就是重排反应2025-11-09 22:41 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; displa…

高三日记

开坑于 \(11.9\)。 一模考完终于有时间写一下了,先补一下历次考试战绩吧。 G12 名校协作体(\(9.1 \sim 9.2\)) 退役 \(1.5\) 个月,目标是上一下特控线。 语文考完直接破防了。 数学屁也不会。 英语听力错三个,根本…

AI agent framework langgraph

https://docs.langchain.com/oss/python/langgraph/workflows-agentsgraph vs workflow Agents are typically implemented as an LLM performing actions using tools. They operate in continuous feedback loops, a…

计算机毕设项目推荐:基于SpringBoot+Vue的非物质文化遗产再创新系统 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

基于实际字节码解析Python链式赋值:从ls1[i]=2到a=b=c=10的完整机制

基于实际字节码解析Python链式赋值:从ls1[i]=2到a=b=c=10的完整机制 针对你提出的“无固定‘左右顺序’?”的疑问,结合你提供的真实字节码(dis模块输出),我们可以明确:Python链式赋值不存在绝对统一的“左→右”…

实用指南:基于python写的PDF表格提取到excel文档

实用指南:基于python写的PDF表格提取到excel文档pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas",…