通过perl脚本过滤C?

通过perl脚本过滤C?,第1张

概述我有一个perl脚本我想在 gcc正常处理之前过滤我的cpp / h文件 – 基本上作为一个额外的预处理步骤.是否有捷径可寻?我意识到我可以将cpp文件提供给脚本并让gcc读取stdin的输出,但这对头文件没有帮助. 处理此类过程的经典方法是将源代码(输入到Perl过滤器)视为一种新语言,并带有新的文件后缀.然后告诉make,从这个新文件类型编译C源文件的方法是使用Perl脚本. 例如: >新后缀 我有一个perl脚本我想在 gcc正常处理之前过滤我的cpp / h文件 – 基本上作为一个额外的预处理步骤.是否有捷径可寻?我意识到我可以将cpp文件提供给脚本并让gcc读取stdin的输出,但这对头文件没有帮助.解决方法 处理此类过程的经典方法是将源代码(输入到Perl过滤器)视为一种新语言,并带有新的文件后缀.然后告诉make,从这个新文件类型编译C源文件的方法是使用Perl脚本.

例如:

>新后缀:.ccp
>新规则(假设.cc后缀):

.ccp.cc:        ${FILTERSCRIPT} $<

>将新后缀添加到后缀列表中 – 优先于正常的C规则.

最后一点是最棘手的.如果您只是将.ccp后缀添加到列表中,那么当.cc文件存在时,make将不会真正关注.ccp文件中的更改.您要么必须删除中间.cc文件,要么确保.ccp出现在后缀列表中的.cc之前. (注意:如果您编写’.ccp.o’规则而没有’.ccp.cc’规则并且不确保清除’.cc’中间件,那么在编译失败后重建可能意味着make只编译’.cc’文件,这可能令人沮丧和困惑.)

如果不能更改后缀,则编写执行过滤的编译脚本并直接调用C编译器.

总结

以上是内存溢出为你收集整理的通过perl脚本过滤C?全部内容,希望文章能够帮你解决通过perl脚本过滤C?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1226203.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存