Makefile第六课:Makefile变量

news/2024/11/24 12:05:13/

目录

  • Makefile的变量
    • 前言
    • 1.变量的定义
    • 2.变量的引用
    • 3.预定义变量
    • 总结

Makefile的变量

前言

学习杜老师推荐的Makefile教程视频,链接。记录下个人学习笔记,仅供自己参考。

之前有转载过杜老师的从零Makefile落地算法大项目文章,感兴趣的可以看看。

本课程主要讲解Makefile中的变量相关知识。

1.变量的定义

Makefile的变量在声明时需要给予初值,而在使用时,需要给在变量名前加上 $ 符号,并用 (){} 把变量给包括起来。

cpp := src/main.cpp 
obj := objs/main.o

其中cppobj都代表Makefile中的变量

2.变量的引用

  • 可以用 (){}
cpp := src/main.cpp 
obj := objs/main.o$(obj) : ${cpp}@g++ -c $(cpp) -o $(obj)compile : $(obj)

3.预定义变量

  • $@:目标(target)的完整名称
  • $<:第一个依赖文件(prerequisties)的名称
  • $^:所有的依赖文件(prerequisties),以空格分开,不包含重复的依赖文件
cpp := src/main.cpp 
obj := objs/main.o$(obj) : ${cpp}@g++ -c $< -o $@@echo $^compile : $(obj)
.PHONY : compile

总结

本次课程主要学习了变量的定义以及引用,还有三个预定义变量$@$^$<


http://www.ppmy.cn/news/36558.html

相关文章

Gucci与Yuga Labs合作,探索奢侈品在元宇宙中的数字化体验

看来 Gucci 又要进军元宇宙了。这家意大利时尚巨头正在与Yuga Labs合作&#xff0c;探索元宇宙中时尚与娱乐的交汇点。 Gucci NFT Gucci 已经凭借其为Yuga Labs 的 10KTF 项目设计的品牌服装涉足 NFT 世界。现在&#xff0c;凭借这一多年战略合作伙伴关系&#xff0c;Gucci 将在…

linux简单使用

目录标题查看linux版本查看内核版本查看shell的类型#、$代表什么pwd打印工作目录重启和关闭linux操作系统echo #?查看ip地址用户切换远程连接&#xff08;window/linux一样&#xff09;修改主机名返回上一目录修改普通用户密码查看linux版本 [rootrhcsay ~]# cat /etc/redhat…

Java自定义注解的定义与使用

什么是注解&#xff1f;对于很多初次接触的开发者来说应该都有这个疑问&#xff1f;Annontation是Java5开始引入的新特征&#xff0c;中文名称叫注解。它提供了一种安全的类似注释的机制&#xff0c;用来将任何的信息或元数据&#xff08;metadata&#xff09;与程序元素&#…

6自由度串联机械臂实现电磁铁搬运功能

1. 功能描述 R323样机是一款拥有6自由度的串联机械臂。本文提供的示例所实现的功能为&#xff1a;在6自由度串联机械臂样机上安装电磁铁&#xff0c;底座上安装近红外传感器&#xff0c;当检测到有物品时&#xff0c;实现机械臂电磁铁搬运物品的功能。 ​ 2. 电子硬件 在这个示…

vue项目使用Print.js插件实现PDF文件打印

一&#xff0c;Print.js介绍 Print.js主要是为了帮助我们在应用程序中直接打印PDF文件&#xff0c;而不需要离开界面&#xff0c;也不需要使用嵌入。对于用户不需要打开或下载PDF文件的特殊情况&#xff0c;只需要打印即可。 例如&#xff0c;当用户请求打印在服务器端生成的报…

如何把ntfs改成苹果电脑使用及mac写入ntfs硬盘软件教程

ntfs是一种功能强大的文件系统&#xff0c;该格式的文件系统具有存储空间大&#xff0c;传输单个文件能力强&#xff0c;安全系数高等诸多优点&#xff0c;被广泛应用在移动硬盘中。但ntfs格式硬盘&#xff0c;不能在mac中被正常读写&#xff0c;那么ntfs怎么在mac使用&#xf…

leetcode 汉诺塔问题(面试题)

题目 在经典汉诺塔问题中&#xff0c;有 3 根柱子及 N 个不同大小的穿孔圆盘&#xff0c;盘子可以滑入任意一根柱子。一开始&#xff0c;所有盘子自上而下按升序依次套在第一根柱子上(即每一个盘子只能放在更大的盘子上面)。移动圆盘时受到以下限制: (1) 每次只能移动一个盘子;…

Matplotlib库基础图表函数及引力波的绘制实例

pyplot基本图表函数概述 pyplot饼图的绘制 plt.pie() lables指的是饼图的标签 sizes指的是对应的尺寸 explode让第二个30%突出0.1 autopct中间显示百分数的方式 shadowFalse二维饼图不带阴影 startangle90饼图的起始角度 加plt.axis(equal)可以让饼图成为一个正圆形的饼图…