Makefile是Linux系统中不可或缺的工具,其独特的文件格式被用于描述软件程序的编译流程及其相互依赖关系。通过Makefile,用户可以轻松利用make命令来构建和管理项目。尽管其语法和规则相对直观,但在实际应用中仍有一些细节和特殊情况需特别关注,否则可能会导致编译失败或产生不可预见的结果。
1、ifeq语句的括号里面,不要随意使用空格
TmpDir = /Source
#下方的/Source后面空了几格
ifeq ($(TmpDir), /Source )
Result = They are equal
else
Result = They are not equal
endif
all:
@echo $(Result)
make之后其结果为 :
They are not equal
若把
ifeq ($(TmpDir), /Source )
改为
ifeq ($(TmpDir), /Source)
2、在mingw环境下使用路径时的陷阱
TARGET = Temp
# abspath 函数:获取其参数中的文件或者目录的绝对路径
APP_BASE = $(abspath ../..)
DEV_BLD_DIR = $(APP_BASE)/$(TARGET)/Build
TEMP = $(APPSRC:.c=.o)
APPOBJS_TMP = $(TEMP:.S=.o)
# addprefix 函数:把 APPOBJS_TMP 中的文件一一添加前缀 $(DEV_BLD_DIR)/
APPOBJS := $(addprefix $(DEV_BLD_DIR)/,$(APPOBJS_TMP))
APPDEPS_TMP = $(APPOBJS_TMP:.o=.d)
APPDEPS := $(addprefix $(DEV_BLD_DIR)/,$(APPDEPS_TMP))
all: Tmp.bin
-include $(APPDEPS)
......
#省略了若干内容
......
# subst 函数:把$@中的 Source 替换成 Build
# 该编译的命令,在编译源文件的同时,也生成了.d 依赖文件
$(DEV_BLD_DIR)/%.o: %.c
$(info Compiling $$@) $(CFLAGS) $(INCFLAGS) $
上面是“Linux Makefile使用指南:避开常见误区与陷阱”的全面内容,想了解更多关于 后端开发 内容,请继续关注web建站教程。
当前网址:https://ipkd.cn/webs_14392.html
workflows工作流
树上站着一只鸟ComfyUI工作流
一颗柔和的水晶金字塔ComfyUI工作流
一个熙熙攘攘的市场场景,里面摆满了南瓜
一只张大嘴巴露出锋利的牙齿正在咆哮的雪豹
一棵白色心形流苏树comfyui工作流
3D几何打印人体模型ComfyUI工作流
一个极其美丽细致的女孩ComfyUI工作流
爱因斯坦在做实验3d动漫ComfyUI工作流
猜你喜欢
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

css3画弹珠,可以滚动!
利用css绘画棋盘布局(象棋)
javascript如何利用draggable实现一个拖拽效果
一起去看流星雨(代码)
自动打字效果(惊喜在后面)
黑客入侵效果代码
用svg画出游泳池动画效果
用ascii字符画图像










