我正在尝试编译一些c代码,这些代码最初是为SDCC编写的,使用GCC在主机上运行一些单元测试。有一些SDCC的语言扩展,比如__xdata或__pdata (用于内存控制),它们应该为SDCC保留,但在使用GCC编译时应该忽略这些扩展。我强烈建议不要修改测试中的模块。有没有办法做到这一点?
我已经知道,如果我在测试模块中添加像#define __xdata这样的东西,它就会起作用。因此,也许可以有一个类似于“全局定义”的东西?我几乎没有使用过GCC的经验。也许有编译器标志可以帮助我?
发布于 2021-05-06 11:16:59
有两个编译器标志,您可以使用:
-include允许您提供一个额外包含的c文件,并在该文件中执行定义。通过命令行选项-D__xdata=定义
https://stackoverflow.com/questions/64748030
复制相似问题