gpt4 book ai didi

makefile - makefile中的通配符是什么意思?

转载 作者:行者123 更新时间:2023-12-02 10:35:48 24 4
gpt4 key购买 nike

我在 makefile 教程中找到了以下几行,但粗体行有一些问题。

在 1 行中,如果我写

program_C_SRCS:=$(*.c)

它不起作用。所以请告诉我什么是通配符词在这里做。这个词是专门针对 makefile 的吗?

在教程中,第二行将执行测试替换。谁能告诉我有关此文本替换的一些信息吗?

如果我的问题非常基本,请原谅,因为我是制作文件的新手。

link of tutorial

CC:=g++
program_NAME:=myprogram
**program_C_SRCS:=$(wildcard *.c)** # 1 line
program_CXX_SRCS:=$(wildcard *.cc)
**program_C_OBJ:=$(program_C_SRCS:.c=.o)** # 2 line
program_CXX_OBJ:=$(program_CXX_SRCS:.c=.o)
program_OBJ:= $(program_C_OBJ) $(program_CXX_OBJ)

最佳答案

假设您有两个源文件。 foo.cbar.c

program_C_SRCS:=$(wildcard *.c) # 1 line

通配符函数是Make语法。变量 program_C_SRCS 现在的值为 foo.c bar.c(可能不是按这个顺序)。

program_C_OBJ:=$(program_C_SRCS:.c=.o) # 2 line

这是一个substitution reference 。它转换文本,用一个子字符串替换另一个子字符串。变量 program_C_OBJ 现在的值为 foo.o bar.o

关于makefile - makefile中的通配符是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11184389/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com