开源改变世界

循环包含 grbl.h? #361

推推 grbl 2年前 (2023-01-30) 125次浏览
关闭
alejandromango 打开了这个问题 2020 年 3 月 24 日 · 2 条评论

注释

循环包含 grbl.h? #361

我正在使用 fork 来实现基于 custom_machine_template 的新自定义机器。我发现反向运动学函数依赖于 grbl.h 文件的循环包含。具体来说,当编译器进入 custom_machine_template.h 文件时,plan_line_data_t 结构未定义,但通过一系列嵌套的#include “grbl.h”,该结构在使用时定义。向 grbl.h 文件添加标题保护会破坏使用反向运动学的自定义机器(使用 CPU_MAP_POLAR_COASTER 配置设置通过提交a9cc851进行测试)。

不幸的是,没有头部防护会破坏我的自定义机器代码。我的直觉是只向 grbl.h 添加一个标头保护,但我对代码的了解还不够深入,无法了解可能产生的其他影响。忽略 header guard 是否是一个有意识的决定,是否有关于它创建的时髦依赖项的良好文档?

很抱歉发了这么长的帖子,我希望它是清楚的。非常感谢这款出色的软件,我非常高兴能将它完全移植到我正在使用的机器上。

循环包含 grbl.h? #361

哇,刚刚更新了我的叉子,看起来在过去 30 天内定制机器发生了大量变化。我将不得不进行更多测试,看看我是否仍然遇到此错误

循环包含 grbl.h? #361

我是将 cpu_map 重构到 Machines/ 框架中的罪魁祸首,所以我很想知道您的进展情况。我会帮助解决您遇到的任何问题。