gpt4 book ai didi

使用 gcc 创建一个固定大小的部分并在其中放置值

转载 作者:行者123 更新时间:2023-11-30 16:11:51 26 4
gpt4 key购买 nike

我需要将二进制文件嵌入到使用 gcc 生成的可执行文件中在 Linux 上,在主机中执行(而不是在单独的设备中)。

此外,我希望能够使用 obcjcopy --update-section 从外部更改该二进制内容.

我可以用__attribute__(("section"))来做到这一点,但问题是提到的二进制文件在不同时刻可能有不同的大小,所以我想分配一个固定最大大小的部分。因此,我将来可以更新稍大/更小的二进制文件。

除了上述内容之外,我想在构建时为该特定部分提供默认值(构建时可用的预定义二进制文件)。

这可以通过链接描述文件来完成。但是,据我了解,我需要修改操作系统默认链接器脚本,这是我想避免的。

我想到的唯一一件事是在该部分上创建一个具有固定大小的数组,使用第一个字节来分配默认的二进制文件并用 0xFF 填充其余部分。例如。

有更好的方法吗?

最佳答案

正如 ikegami 所提到的,指定数组的最大大小,然后初始化您需要的值就足够了。

关于使用 gcc 创建一个固定大小的部分并在其中放置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58485275/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com