Comment mettre 2 sections dans 1 segment (Utilisation des scripts ld)

J’ai le script de linker suivant:

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) } } 

Lorsque je comstack mon programme, les deux sections (exec et data) se trouvent dans des segments LOAD différents. Je veux mettre les deux sections (.arora_data_free_space et .arora_exec_free_space) dans un seul segment LOAD. Est-il possible de le faire en utilisant des scripts de l’éditeur de liens? Comment puis-je le faire? Merci.

Bien sûr – il vous suffit d’utiliser PHDRS . L’exemple de ce lien est à peu près exactement ce que vous voulez faire, je pense. Voici un exemple (non testé) que j’ai réalisé à partir de votre script de l’éditeur de liens:

 PHDRS { mysegment PT_LOAD; } SECTIONS {  .arora_exec_free_space 4399531 :  {    *(.text)    *(.rodata)    *(.data.rel.ro.local)  } :mysegment  .arora_data_free_space (ADDR(.arora_exec_free_space) + SIZEOF(.arora_exec_free_space)) : AT (7592352)  {    *(.data)    *(.bss)    *(.got)  } :mysegment }