编译重定向,c 导致部分重叠

Compiling retarget,c resulting in overlapping section

提问人:user10367180 提问时间:10/4/2023 更新时间:10/4/2023 访问量:9

问:

我们能够在环境中的 A53 内核上运行汇编测试用例(以及基本 C)。

下一步,我们想调出 retarget.c 更改,以便从 C 语言进行打印。

编译阶段成功通过并创建了 retarget.o。但是,在链接过程中,我们遇到了以下错误:-

/tools/armgcc/2020.11/bin/aarch64-none-elf-gcc -Wl,-T 验证/orion/sltb_uvm/CORE_SETUP/INFRA/link_csrc_aarch64.ld -lm -o main.elf objs/*.o

/tools/armgcc/2020.11/bin/../lib/gcc/aarch64-none-elf/10.2.1/../../../../aarch64-none-elf/bin/ld:部分数据 LMA [000000004000fa00,0000000040017fff] 与部分 .text.wcsnrtombs LMA 重叠 [0000000004000f9e0,000000004000fa17]

/tools/armgcc/2020.11/bin/../lib/gcc/aarch64-none-elf/10.2.1/../../../../aarch64-none-elf/bin/ld:第 .text._wctomb_r LMA 节 [0000000004000fa20,000000004000fa2f] 与 DATA LMA 节重叠 [0000000040000fa00,0000000040017fff]

/tools/armgcc/2020.11/bin/../lib/gcc/aarch64-none-elf/10.2.1/../../../../aarch64-none-elf/bin/ld: /tools/armgcc/2020.11/bin/../lib/gcc/aarch64-none-elf/10.2.1/../../../../aarch64-none-elf/lib/libc.a(lib_a-signalr.o):在函数 _getpid' 中_getpid_r': /tmp/dgboter/bbs/build02--cen7x86_64/buildbot/cen7x86_64--aarch64-none-elf/build/src/newlib-cygwin/newlib/libc/reent/signalr.c:83: undefined reference to

/tmp/dgboter/bbs/build02--cen7x86_64/buildbot/cen7x86_64--aarch64-none-elf/build/src/newlib-cygwin/newlib/libc/reent/signalr.c:83:(.text._getpid_r+0x0):重新定位被截断以适应:R_AARCH64_JUMP26未定义的符号“_getpid” collect2:错误:ld 返回 1 退出状态 make: *** [main.elf] 错误 1''

--------------- 错误片段结束-----------------

请在 .ld 文件中找到内存映射

记忆

{ ddr_ram_code : 原点 = 0x40000000,长度 = 640K

ddr_ram_data:原点 = 0x4000FA00,长度 = 1408K

}

您能帮助我们解决我们这边可能缺少什么吗?我不确定为什么报告内存重叠。任何指示都会有所帮助。

谢谢 阿金

GCC GCC-警告

评论


答: 暂无答案