我想使用 CONSTANT __bss_start 打印 bss start 的地址。我做了一个简单的程序,它将打印 bss 部分的地址。下面是代码
section .bss
section .data
x db "value is =%ld"
section .text
;extern alt_u32* __bss_start;
global main
extern __bss_start;
extern printf
main:
mov bx,__bss_start
push bx
push x
call printf
add esp,8
ret
当我运行 gcc -m32 -o bss_start.o 以获取最终可执行文件时,出现以下错误
bss_start.asm:(.text+0x2): relocation truncated to fit: R_386_16 against symbol `__bss_start' defined in *ABS* section in bss
这里可能有什么问题?