c - 编译可能具有依赖性的特定 C 程序的最佳方法是什么?

标签 c embedded

我想在嵌入式平台上编译以下 C 文件:

https://github.com/openwsn-berkeley/openwsn-fw/blob/develop/firmware/openos/bsp/chips/at86rf231/radio.c

但是,如您所见,在 radio.c 的第 20-26 行,它引用了“radiotimer_capture_cbt”:

typedef struct {
   radiotimer_capture_cbt startFrame_cb;
   radiotimer_capture_cbt endFrame_cb;
   radio_state_t state;
} radio_vars_t;

radio_vars_t radio_vars;

所以现在我需要找到它的定义位置并确保包含正确的 header 。

我在这里克隆了整个 GIT 存储库:https://github.com/openwsn-berkeley/openwsn-fw ,我正在寻找一种轻松编译它的方法。

除了经历残酷的依赖噩梦之外,还有更好的方法来编译它吗?

我的最终目标只是编译 radio.c 和它需要的任何东西。我在这个项目中没有看到任何 makefile,所以我希望他们希望我们使用 IDE。

最佳答案

该项目似乎使用 scons 作为构建系统。所以最简单的方法是深入研究 scons 文件。

在包含链接文件的目录中有一个小的 scons 文件,在顶层目录中有两个主要脚本。

但是如果你想玩,先去掉headers include,尝试编译(使用-c)来知道哪些是真正需要的。获得目标文件 (.o) 后,您可以使用 nm 来识别丢失的符号(标有 U.)祝你好运......

关于c - 编译可能具有依赖性的特定 C 程序的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18157091/

相关文章:

c - 尝试更改我的代码的打印方式

c - 如何从 ARM 微 Controller 的 GPIO 端口读取值?

c - 程序运行然后说它停止工作

c - 是否可以忽略 doxygen 生成的引用图中的 `assert` ionic ?

embedded - 中断的尾链

linux - 以编程方式区分 DDR3

embedded - 嵌入式代码示例的用例图

embedded - exp() math.c i c 在循环中不起作用

c - SPOJ ROOTCIPH 错误答案

c - 使用 strftime 获取时间戳