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

时间:2013-08-09 23:21:53

标签: 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;

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

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

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

我的最终目标只是获得radio.c编译及其所需的一切。我在这个项目中没有看到任何makefile,所以我希望他们希望我们使用IDE。

1 个答案:

答案 0 :(得分:3)

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

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

但是如果你想玩,首先删除标题包括,尝试编译(使用-c)以了解真正需要哪一个。获得目标文件(.o)后,您可以使用nm来识别缺失的符号(标记为U.)祝你好运......