ho il seguente script del linker:Come mettere 2 sezioni in 1 segmento (Utilizzo degli script LD)
SECTIONS {
.arora_exec_free_space 4399531 :
{
*(.text)
*(.rodata)
*(.data.rel.ro.local)
}
.arora_data_free_space (ADDR(.arora_exec_free_space) + SIZEOF(.arora_exec_free_space)) : AT (7592352)
{
*(.data)
*(.bss)
*(.got)
}
}
Quando compilo il mio programma le due sezioni (exec e dati) sono in diversi segmenti di carico. Voglio mettere le due sezioni (.arora_data_free_space e .arora_exec_free_space) in un segmento LOAD . C'è un modo per farlo usando gli script di linker? Come posso farlo? Grazie.
Quando si utilizza PHDRS, il resto dei segmenti ELF viene eliminato. Sto cercando un modo per mettere queste sezioni in un segemnt e mantenere il resto dell'elfo senza alcun cambiamento. – Jah
Hai letto il link? "Per impostazione predefinita, il linker creerà intestazioni di programma ragionevoli, tuttavia in alcuni casi potrebbe essere necessario specificare le intestazioni del programma in modo più preciso, a tale scopo è possibile utilizzare il comando PHDRS Quando il linker visualizza il comando PHDRS nello script del linker, non creerà alcun header di programma diverso da quelli specificati. " Se vuoi lasciare gli altri come sono, devi solo includerli nel tuo PHDRS. –