Makefile(patsubst,wildcard)

Posted 吾乃世间奇才

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Makefile(patsubst,wildcard)相关的知识,希望对你有一定的参考价值。

Makefile用变量表示当前目录下所有的c文件,并且转换成o文件

[~/tmp][11:39:25]$ make
echo 1.c 2.c system.c dup2_1.c ls.c
1.c 2.c system.c dup2_1.c ls.c
echo  1.o  2.o  system.o  dup2_1.o  ls.o
1.o 2.o system.o dup2_1.o ls.o
[~/tmp][11:39:37]$ cat Makefile 
CSRC:=$(wildcard *.c)
OBJ:=$(patsubst %.c, %.o, $(CSRC))
target:
        echo $(CSRC)
        echo $(OBJ)

[~/tmp][11:39:39]$ ls -al
total 80
drwxrwxr-x  7 risun risun  4096 Oct  1 11:39 .
drwxr-xr-x 21 risun risun  4096 Oct  1 11:39 ..
drwxrwxr-x  2 risun risun  4096 Sep 29 17:56 11
-rw-rw-r--  1 risun risun  2445 Sep 29 11:35 1.c
drwxr-xr-x  3 risun risun  4096 Sep 29 19:45 20220606_src_pm
-rwxr--r--  1 risun risun  1158 Sep 29 13:31 2.c
-rwxrwxr-x  1 risun risun  8760 Sep 30 21:04 a.out
drwxr-xr-x  3 risun risun  4096 Sep 29 11:41 code
-rwxr--r--  1 risun risun   795 Sep 29 18:08 dup2_1.c
drwxrwxr-x  3 risun risun  4096 Sep 28 09:11 jio
-rwxr--r--  1 risun risun  2596 Sep 29 20:58 ls.c
-rwxrwxr-x  1 risun risun 13672 Sep 29 20:29 lss
-rwxr--r--  1 risun risun    93 Oct  1 11:39 Makefile
drwxrwxr-x  3 risun risun  4096 Sep 29 20:55 project
-rwxr--r--  1 risun risun   448 Sep 30 21:04 system.c
[~/tmp][11:39:41]$ 

以上是关于Makefile(patsubst,wildcard)的主要内容,如果未能解决你的问题,请参考以下文章

makefile中的patsubst函数有何作用?

Makefile(patsubst,wildcard)

Makefile(patsubst,wildcard)

makefile中的wildcard ,notdir, patsubst

wildcard ,notdir ,patsubst ,obj=$(dir:%.c=%.o)

makefile