day 40 复习makefile以及51单片机

ops/2025/2/12 16:43:55/

1.makefile

1.流程

1.将源文件和头文件以及库分别放在src include lib中
2.在源码目录下创建一个名为makefile的文件
3.编写makefile代码。
4.make编译

2.怎么编写代码

通过定义变量 将gcc main.c tree.c queue.c -o app -lm -lpthread 转换
在这里插入图片描述
1.定义变量(所有变量当字符串处理)
定义:变量名=值
也可以
SRC=main.c
SRC+=tree.c
SRC+=queue.c
2.访问变量
$(变量名)
3.系统变量
在这里插入图片描述
4.-I(大写)+头文件位置要在makefile中指定
-L(大写)连接库

在这里插入图片描述
5.删除目标
在这里插入图片描述
然后在终端使用make clean命令删除

6. makefile 时间戳
文件编译时,当文件发生了修改,时间戳会改变,没有修改不会改变,时间戳更新的文件需要重新加入编译,时间戳没有改变的不需要重新编译,节省编译时间
代码中先汇编再链接
%是通识符,前面是目标后面是原
在这里插入图片描述
在这里插入图片描述

2.单片机>51单片机

1.工程创建

1.创建项目文件夹
2.创建新project
在这里插入图片描述
3.创建main.c以及各个模块的源文件以及头文件
在这里插入图片描述
4.添加源文件到GROUP
5.编译生成可执行文件


http://www.ppmy.cn/ops/157096.html

相关文章

Maven 构建命令详解

1. Maven 构建命令概述 Maven 是 Java 生态中最流行的构建工具之一,它提供了一套标准化的构建命令,使得开发者可以轻松管理项目的编译、测试、打包、安装和部署等任务。 本篇文章将深入解析 Maven 中最常用的构建命令,包括: mv…

路由器如何进行数据包转发?

路由器进行数据包转发的过程是网络通信的核心之一,主要涉及以下几个步骤: 接收数据包:当一个数据包到达路由器的一个接口时,它首先被暂时存储在该接口的缓冲区中。 解析目标地址:路由器会检查数据包中的目标IP地址。…

PostgreSQL :如何实现 rownum 的行号查询效果

在 Oracle 数据库中,Rownum 是非常常用的一个查询输出,通过 rownum 可以为结果记录增加一个类似行号的标识,在 PostgreSQL 数据库中缺省没有 Rownum 这个功能,但是可以通过分析函数来实现类似的效果。 select row_number() OVER …

想成为FPGA工程师需要学什么?主要工作内容是什么?

近年来,FPGA行业发展迅速,许多企业正在加大对FPGA人才的需求,特别是数字设计工程师,成为许多公司争抢的“香饽饽”。那么,想成为FPGA工程师,应该掌握哪些技能?他们的工作内容又是什么呢&#xf…

微服务架构中的事件驱动设计:使用 Kafka 和 Apache Pulsar 实现高效的事件流管理

在现代微服务架构中,事件驱动设计(Event-Driven Architecture, EDA)已成为一种流行的架构模式,它能够帮助处理系统中复杂的事件流和异步通信问题。事件驱动架构的核心理念是通过事件(Event)作为系统各个部分…

[Deepseek+Heygen+剪映]快速生产数字人讲解的视频内容

在当今这个视频内容爆炸的时代,如何快速、高效地生产高质量的视频内容成为了许多内容创作者的焦点。特别是对于需要大量讲解类视频的场景,例如产品介绍、知识科普、在线教育等,传统真人出镜的方式往往耗时耗力。 而 数字人 技术的出现&#…

苹果iPhone 16 Pro Max上手体验:性能极致释放

外观:精致与科技感并存 iPhone 16 Pro Max的外观在延续经典的基础上进行了细节优化。钛金属中框采用微喷砂工艺,手感圆润且质感细腻,不过容易留下指纹。其提供了四种配色,其中沙漠钛金属色独特且富有质感,阳光下反射出…

【starrocks学习】之将starrocks表同步到hive

目录 方法 1:通过HDFS导出数据 1. 将StarRocks表数据导出到HDFS 2. 在Hive中创建外部表 3. 验证数据 方法 2:使用Apache Spark同步 1. 添加StarRocks和Hive的依赖 2. 使用Spark读取StarRocks数据并写入Hive 3. 验证数据 方法 3:通过…