完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
以下内容为评论
我是嵌入式的新手,目前打算将freeRTOS移植到starvision2上。 但是在链接的时候遇到一个问题。 main.c:74:(.text+0x26): relocation truncated to fit: R_RISCV_HI20 against `TaskBnum.5' (这个main.c是我从一个移植教程里面偷来的) 我查了一下,说可能是链接脚本还是什么的问题。objdump后发现static变量的地址是0。 没太搞懂是为什么。下面是我的链接脚本 OUTPUT_ARCH("riscv") /*指定输出的架构*/OUTPUT_FORMAT("elf64-littleriscv") /*指定输出的大小端*/ENTRY(kernel_entry) /*指定入口点*/SECTIONS /*配置节表*/{ . = 0x80200000; /*.变量赋值为openSBI的入口地址0x80200000,.变量会随着后面节表的追加自动增加,即可以理解成.变量标识当前位置*/ PROVIDE(kernelstart = .); /*创建变量并赋值(仅方便编程、可没有)*/ .text /*配置代码节,代表内容存放的实际物理地址,但.自己也会跟着移动*/ { textstart = .; /*创建变量并赋值(仅方便编程、可没有)*/ *(.text.entry) /*将满足这些条件的节都放到这里来*/ *(.text .stub .text.* .gnu.linkonce.t.*) /*将满足这些条件的节都放到这里来*/ textend = .; /*创建变量并赋值(仅方便编程、可没有)*/ } .rodata : /*配置只读数据节*/ { rodatastart = .; *(.srodata .srodata.* .rodata .rodata.* .gnu.linkonce.r.*) rodataend = .; } . = ALIGN(0x1000);/*将.对齐到4KB*/ .data : /*配置数据节*/ { datastart = .; *(.data) *(.data.*) dataend = .; } . = ALIGN(0x1000); .bss : /*配置bss节*/ { bssstart = .; *(.bss) *(.bss.*) *(.sbss*) bssend = .; } PROVIDE(kernel_end = .); /*创建变量并赋值,并对外提供kernelend符号,即在C/C++中可以调用这个量*/ . = ALIGN(0x1000); PROVIDE(freememstart = .);} |
|
相关推荐
2个回答
|
|
|
需要打开-mcmodel=medany编译选项
|
|
|
|
|
|
在将FreeRTOS移植到StarVision2平台时,遇到 1. 检查链接脚本链接脚本(Linker Script)定义了内存布局和符号的分配方式。确保链接脚本正确配置了 例如,确保链接脚本中有类似以下内容: 2. 检查编译器选项确保编译器选项正确配置,特别是与内存布局和代码生成相关的选项。例如, 3. 检查符号重定位错误信息 确保链接脚本中的内存布局足够大,以容纳所有符号。例如: 4. 检查启动代码确保启动代码正确初始化了 例如,启动代码中应有类似以下内容: 5. 使用调试工具使用调试工具(如GDB)检查符号地址和内存布局。例如,使用 6. 检查FreeRTOS配置确保FreeRTOS的配置正确,特别是与堆栈和内存管理相关的配置。例如,检查 7. 检查平台特定代码确保平台特定代码(如中断向量表、时钟配置等)正确配置,并且与FreeRTOS兼容。 通过以上步骤,你应该能够找到并解决 |
|
|
|
|
只有小组成员才能发言,加入小组>>
VisionFive2中openplc页面无法打开怎么解决?
1431 浏览 1 评论
第一次启动StarFive VisionFive 2, U-Boot总是报错,为什么?
1299 浏览 1 评论
VisionFive 2 生态进展双周报(1.1-1.31)
2403 浏览 0 评论
JH-7110现已支持AMP双系统(Linux + RT-Thread)
2122 浏览 0 评论
VisionFive 2 生态进展双周报(9.29-10.16)
1062 浏览 0 评论
872浏览 2评论
900浏览 2评论
在starvision2上移植FreeRTOS,objdump后发现static变量的地址是0,怎么解决?
385浏览 2评论
395浏览 2评论
SPI驱动模块init后probe函数并不会打印信息是哪里出了问题?
381浏览 2评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-3 11:44 , Processed in 0.598669 second(s), Total 45, Slave 38 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
9124
