rog 发表于 2023-8-18 15:50:08

armgcc编译stm32问题

遇到一个问题,怎么将stm32中的c程序文件中的一段字符串编译到最终生成的bin文件中,并且bin文件打开后能找到,同时还不影响程序运行,我用arm-gcc编译的环境


eric2013 发表于 2023-8-18 16:54:51

字符串数组? 加前缀const就行。

rog 发表于 2023-8-19 20:18:27

eric2013 发表于 2023-8-18 16:54
字符串数组? 加前缀const就行。

呃,神马意思呢,没理解

emwin 发表于 2023-8-19 22:24:34

添加属性保留未引用的变量:
__attribute__((used))

庄永 发表于 2023-8-20 12:38:21

rog 发表于 2023-8-19 20:18
呃,神马意思呢,没理解

加const修饰的变量,编译的时候会将数据存放在Flash

rog 发表于 2023-8-21 15:38:43

庄永 发表于 2023-8-20 12:38
加const修饰的变量,编译的时候会将数据存放在Flash

这样可以是可以,那我怎么确定位置,比如我要塞入版本号,那我怎么判断它在哪个位置,才能读取出来。这里读取版本号,是它自己读取自己的版本号哦

tovinz 发表于 2023-8-21 16:46:32

const app_info_t APP_INFO __attribute__((section(".ARM.__at_0x08040400"))) = {
    ....
};

rog 发表于 2023-8-21 22:59:46

tovinz 发表于 2023-8-21 16:46
const app_info_t APP_INFO __attribute__((section(".ARM.__at_0x08040400"))) = {
    ....
};

有完整的示例吗?ld文件是怎们处理的,我是gcc编译stm32的环境

tovinz 发表于 2023-8-22 09:05:52

rog 发表于 2023-8-21 22:59
有完整的示例吗?ld文件是怎们处理的,我是gcc编译stm32的环境

抱歉,忘了标题是gcc了。
有大佬已经给出了解决方式
https://www.armbbs.cn/forum.php?mod=viewthread&tid=119583&highlight=%D6%B8%B6%A8

rog 发表于 2023-8-22 14:13:08

tovinz 发表于 2023-8-22 09:05
抱歉,忘了标题是gcc了。
有大佬已经给出了解决方式
https://www.armbbs.cn/forum.php?mod=viewthread& ...

感谢老哥的鼎力支持
页: [1]
查看完整版本: armgcc编译stm32问题