Как разместить объекты libc.a в определенных разделах вывода в сценарии GCC LD?

Я пытаюсь разместить функции libc как memcpy, memset и т.д. в определенных разделах памяти. Я пытался сделать что-то вроде этого:

.section1
{
    /path/to/libc.a
    otherobj.o
}
.section2
{
    *(.text)
}

.section3
{
    *(.data .bss)
}

используя инструмент ld gcc с этим сценарием и опцией -map, я проверяю сгенерированный файл карты и вижу, что memcpy и другие символы все еще появляются в разделах 2 и 3.

Временное решение:

Наконец, я просто извлек файл lib в свою коллекцию объектных файлов и разместил их по отдельности там, где мне понравилось.

0 ответов

Другие вопросы по тегам