寻找二进制图像布局工具

时间:2010-01-29 23:17:09

标签: embedded

我正在寻找一种工具的建议,让我可以用一系列较小的图像构建二进制图像。

我有一个带有闪存ROM的嵌入式系统,我使用单个映像编程。该图像由一系列放置在特定偏移处的较小对象(数据,编译代码等)组成。我继承的构建系统使用一个令人不安的旧16位DOS实用程序混合来一起破解图像。我希望找到一种现代化的工具,能够以一种不那么神秘(而且不易出错)的方式完成工作。

该工具需要能够从配置文件运行。也就是说,我指定文件A.bin需要放置在偏移量4KB,文件B.bin需要放置在配置文件中的偏移量16KB等,以便该工具不需要重复的手动命令行调用。这主要是因为我们有另一个系统会自动生成这些配置文件。

该工具还需要是开源的(或至少是跨平台的)。我们有开发人员使用Windows和使用Linux的自动构建系统,该工具需要同时使用它们。

我已经在C中讨论了我自己的实用程序,但是在我完成所有开发和调试的麻烦之前,我想问一下是否有人知道我错过了一个已经存在的工具。

编辑:遗憾的是,与Cygwin相关的工具不适合我们。如果在安装了Cygwin的系统上运行,我们的一个关键构建工具将崩溃(我认为它使用的是特定的,较旧的cygwin DLL,但这本身就是一个完全不同的惨败)。

3 个答案:

答案 0 :(得分:2)

dd绝对是你最好的朋友。

为Windows用户使用cygwin。

答案 1 :(得分:2)

我经常写自己的,但是通过Jack Ganssle的Embedded Muse第184号新闻通讯,我遇到了http://srecord.sourceforge.net/,它几​​乎可以处理任何类型的二进制图像文件(尽管它的名称是它处理的)比摩托罗拉S-Records更多的格式,包括原始二进制文件)。它可以为您节省一些时间。

答案 2 :(得分:0)

随OKL4一起发布的Elfweaver实用程序可能适合您。从手册: “Elfweaver是一个可用于操作ELF文件的工具.Elfweaver是一个只使用跨平台库的Python 2.3应用程序。因此Elfweaver应该在Linux,Mac-OS X和Windows上运行.Elfweaver的主要功能是它允许用户将多个ELF文件合并为一个ELF文件“ http://wiki.ok-labs.com/downloads/release-3.0/okl4-ref-manual-3.0.pdf

如果您认为看起来合适,可以从OKL4网站获取该工具以及okl4源代码。