1
我正試圖編寫一個可執行文件,其中.text部分位於特定位置。我寫了下面的鏈接腳本:鏈接器部分對齊
base_address = 0x123456789AB;
SECTIONS
{
ENTRY(_start)
. = base_address;
.text : { *(.text); }
}
然而,當我看到生成的可執行文件的內存映射,我看到:
12345600000-12345679000 r-xp 00000000 08:01 1 /path/to/executable
很明顯,爲什麼部分將被排列到0x1000
,這是頁面大小,但0x100000
從哪裏來?
現在最有趣的部分是,當我禁用與-Wl,--build-id=none
建立IDS這只是發生時,或者當我開啓它並.text
後立即東西的.note.gnu.build-id
部分。