gpt4 book ai didi

c - Flex + 生成文件

转载 作者:行者123 更新时间:2023-11-30 15:34:11 33 4
gpt4 key购买 nike

我正在尝试创建一个需要调用 flex 的 Makefile。以下是 forum 中已经讨论过的内容并在 flex manual ,我想出了以下内容:

klex: klex.o kconfig.lex.o        gcc -o klex klex.o kconfig.lex.okconfig.lex.o: kconfig.lex.c        gcc -c kconfig.lex.ckconfig.lex.c: kconfig.lex        flex kconfig.lex ;  egrep -o "[^A-Z(]T_[A-Z_]+" kconfig.lex | \        egrep -v "^T_EOF$" | sort -u | \        awk 'BEGIN{i=1 ; printf("#ifndef __SYMBOLS_H\n") ; printf("#define __SYMBOLS_H\n\n") } \        { \                printf("#define %s %d\n", $NF, i); i++ \        } \        END{ printf("#define T_EOF 0\n\n") ; printf("#endif\n") ; }' > symbols.hclean:        rm -f kconfig.lex.c *.oclean:        rm -f kconfig.lex.c *.o

但是,在调用 make 时,我收到以下错误:

klex.c:1:25: fatal error: kconfig.lex.c: No such file or directory

这意味着 Flex 没有被调用,因此不会生成 kconfig.lex.c。有什么想法吗??

提前致谢:)

最佳答案

为什么kex.c尝试#includekconfig.lex.c?这似乎不对,特别是因为您已经单独编译了 kconfig.lex.c

并且,如果它是正确的,那么您必须将 kconfig.lex.c 列为 kex.o 的先决条件,否则 make 不会意识到存在是这两者之间的顺序依赖关系。

关于c - Flex + 生成文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23398955/

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