- 博客(81)
- 资源 (1)
- 收藏
- 关注
原创 make_01_Program_10_一个makefile文件引用另一个makefile文件,两个文件中的目标 all会有影响不
当使用include引入多个 Makefile 时,最后一个定义的同名目标将被使用,之前的定义将被忽略。为避免目标冲突,可以为每个 Makefile 中的目标使用不同的名称,或设计出统一的目标结构来协同工作。
2025-04-05 11:50:34
290
原创 make_01_Program_09_一个makefile 文件中,有多个.PHONY目标定义时,先执行哪个目标
在 Makefile 中,目标的执行顺序通常由默认目标和依赖关系决定。您可以通过自定义目标之间的依赖关系以及指定的调用方式,控制目标执行的顺序。如果只有.PHONY定义而没有依赖关系,则所有.PHONY目标不会自动执行,除非通过特定命令调用。
2025-04-05 11:46:17
288
原创 make_01_Program_08_makefile 一个文件是不是可以有多个.PHONY目标
在 Makefile 中,您可以根据需要定义多个.PHONY目标。这样可以确保每次运行make来调用这些目标时,他们的命令都会被执行,而不受文件状态的影响。这增加了 Makefile 的灵活性和可用性。
2025-04-05 11:43:49
222
原创 make_01_Program_07_$@ $^ 是什么含义
@:自动变量,代表当前规则的目标文件名。$^:自动变量,代表所有的依赖文件名(不重复)。这两个自动变量极大地方便了 Makefile 的编写,使得在构建过程中自动化和灵活性得以增强,避免了手动指定目标和依赖的重复工作。
2025-04-05 11:37:57
149
原创 make_01_Program_06_makefile 如何定义变量
基本赋值最基本的变量定义方式是使用等号CC = gcc这里,CC变量定义了用于编译的 C 编译器,CFLAGS变量定义了编译选项。立即赋值使用:=使用:=时,变量的值会被立即计算并存储,而不是在后续的使用中再进行计算。递归赋值使用在这个例子中,SRC的值在OBJ被使用时才会被求值。附加值使用+=在这个例子中,-O2被追加到已有的CFLAGS中。在 Makefile 中,定义和使用变量非常简单,通过使用标准的赋值语法,您可以轻松地维护和管理大型项目的构建系统。
2025-04-05 11:35:54
158
原创 make_01_Program_06_:: 是什么功能
用法的灵活性允许您为同一个目标添加多个命令(多重规则),使得 Makefile 更加灵活。独立的依赖关系:可以让同一个目标与不同的依赖关系独立存在。适用于需要同时执行多条命令的场景:在清理、构建复杂项目或需要执行多种操作的场合特别有用。使用可以帮助您创建更强大和灵活的编译规则,以满足各类复杂的构建需求。
2025-04-05 11:29:54
154
原创 make_01_Program_05_wildcard 什么功能
函数是 Makefile 中一个重要的工具,能够帮助开发者动态获取文件列表并根据这些文件的存在性来控制构建流程。通过使用wildcard,可以使得 Makefile 更加灵活,减少手动更新文件列表的需要,提高自动化程度。
2025-04-05 11:26:48
130
原创 repo_01_repo info是什么功能
repo info是一个实用的命令,可以帮助开发人员更好地理解和管理他们的repo项目。它提供了有关子仓库和项目状态的综合视图,使得在处理大型项目时能够更加高效地进行操作。
2025-04-05 11:22:52
122
原创 make_01_Program_04_bat脚本怎么传递变量给makefile
通过这种方式,您可以灵活地在批处理脚本中定义变量,并将它们传递给 Makefile,以便在构建过程中使用。这种方法使得变量可以根据不同的需求和环境轻松地调整和配置。
2025-04-05 11:13:21
198
原创 bat_01_参数%*是什么功能?
在批处理脚本中,%*用于轻松获取并引用所有传递给脚本的参数,是处理命令行输入的一种方便方式。使用echo %*可以快速查看用户输入的所有参数,而不需要逐个引用每个参数。
2025-04-05 11:11:16
183
原创 make_01_Program_04_条件分支如何定义
在 Makefile 中使用条件分支和变量比较可以实现灵活的构建逻辑。利用ifeq和ifneq可以根据不同的条件控制编译和其他操作的执行,使得构建过程更加精细化和可定制化。
2025-04-05 11:07:59
264
原创 make_01_Program_03_makefile 如何判断变量包含某个字符
在 Makefile 中,您可以使用filter和findstring函数配合条件语句来判断一个变量是否包含某个字符或子串。这种方法灵活且易于实现,可以根据需要进行扩展和修改。
2025-04-05 11:04:30
272
原创 make_01_Program_02_makefile 如何判断文件在不在
在 Makefile 中,可以使用shell命令结合test或wildcard函数来判断文件的存在性。这两种方法都能有效地帮助您在构建过程中进行条件判断,从而根据文件的存在与否进行不同的操作。选择适合您需求的方式即可。
2025-04-05 11:02:06
294
原创 bash_02_export_02_如何修改环境变量中命令的路径?
在 Linux 中,如果你想要修改PATH环境变量中某个命令的路径,可以按照以下步骤进行。PATH环境变量是一个包含可执行文件路径的列表,系统会在这些路径中查找命令。
2024-12-04 21:00:00
602
原创 CMake_CMD_02_add_custom_command() 是什么功能?
是 CMake 中一个非常灵活的功能,允许开发者在构建过程中执行自定义命令,生成或处理文件。这使得 CMake 能够适应多种构建场景和需求。
2024-09-09 21:09:03
389
原创 CMake_CMD_01_add_custom_target() 是什么功能?
是 CMake 中一个强大的工具,允许开发者定义和管理自定义构建目标,执行特定的命令或操作,而不直接与源文件关联。它在项目的构建管理和自动化中非常有用。
2024-09-09 21:07:30
301
原创 AUTOSAR-COMStack-003_SignalGroup如何发送&接收
从需求[SRS_Com_02041], [RS_BRF_01632]来看,Signal Group机制主要用于发送,接收复杂数据类型的信号,并保持其一致性。换言之,若一个应用数据比较富足,有多个子数据类型组成,如结构体,若仍旧使用Signal机制,就需要分开进行发送,很难保证一个信号中的子数据类型的一致性。故而绑定各个子数据类型,一起更新,从而保证一致性。假设信号signal_a, signal_b 属于Signal Group group_x, 那么如何发送和接收信号呢?
2024-04-23 20:29:14
867
原创 CMake_02_如何编译可调试文件
软件开发过程中,调试是必不可少的环节之一,让可执行文件”明牌“执行,不会漏过每一行代码,每一个变量的信息。从而帮助开发者快速定位到问题点。在CMake.txt文件中,设置如下编译参数就可以了(适用于CMake 3.14.7 版本)可执行文件中,正是多加了这些字段信息,才让GDB工具可以“明牌”运行。使用gdb工具调试运行上述文件,只能看到一行行指令,是没有代码的。好像没啥区别,过滤下看看。
2024-01-13 11:37:29
684
原创 Eclipse_04_如何设置TAB键为四个空格
Eclipse 默认设置TAB按键为TAB,使用其他编辑器打开时,会出现代码对齐的问题。可以将"TAB"键设置为四个空格,保证行对齐,代码风格一致。
2024-01-13 10:51:48
671
1
原创 Eclipse_03_如何加快index速度
Xms:是最小堆内存大小,也是初始堆内存大小,因为堆内存大小可以根据使用情况进行扩容,所以初始值最小,随着扩容慢慢变大。-Xmx:是最大堆内存大小,随着堆内存的使用率越来越高,堆内存的大小会趋向于最大内存大小扩容。完整参数详解(该参数意思为堆内存初始值为2048m、最大值为8096m)
2023-12-19 21:00:31
922
原创 重读《人月神话》
焦油坑我们要跳到一个什么样的坑里,坑有多深?ProgramProgram product = 3 * Program 工作量Program System = 3 * Program 工作量Program System product = 3 * 3 * Program 工作量明知是坑,为何我们还执意跳?创造的快乐,独乐乐不与众乐乐!痛苦的根源也来于此,为他人做梦,让别人快乐!人月神话片刻等待,更多美味,更多享受计划 = ?计划的方法:乐观主义?计划的单位:人, 月可以互换?
2022-10-09 22:59:02
193
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人