VictorsProg 0 21 ноября, 2016 Опубликовано 21 ноября, 2016 · Жалоба Доброго времени суток. Я применяю ARM freescale. компилятор gcc Я расположил переменные в определённой секции. /*скрипт линкёра*/ .mod : { *(.mod) } > m_text2 //код uint8_t var __attribute__ ((section(".mod"))); Подскажите, возможно секцию mod зафиксировать по определенному адресу? Например в 0x2700. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 21 ноября, 2016 Опубликовано 21 ноября, 2016 · Жалоба Можно, поправив скрипт линкера. Но надо помнить, что гнушный линкер не позволяет создавать секции с дырками, т.е. секция text, например, должна быть непрерывной. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VictorsProg 0 21 ноября, 2016 Опубликовано 21 ноября, 2016 · Жалоба Но надо помнить, что гнушный линкер не позволяет создавать секции с дырками, т.е. секция text, например, должна быть непрерывной. А возможны дырки между секциями? например между mod1 И mod2. Можно, поправив скрипт линкера. Вы могли бы привести пример как это можно сделать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 121 21 ноября, 2016 Опубликовано 21 ноября, 2016 · Жалоба А возможны дырки между секциями?Да. Вы могли бы привести пример как это можно сделать?Посмотрите внимательно на объявление региона m_text2 в вашем скрипте. Заведите по аналогии свой регион в нужных адресах и кладите в него нужные секции. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AVI-crak 0 21 ноября, 2016 Опубликовано 21 ноября, 2016 · Жалоба Как это - дырки между секциями??? По дефолту gcc самостоятельно может заполнить первую секцию, для второй необходимо ручным способом помечать функции и дату. Однако мне ентересно, как gcc будет лить автоматом то, что не влезло в первую секцию. Желательно с наскальными рисунками. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 21 ноября, 2016 Опубликовано 21 ноября, 2016 · Жалоба В случае с гнушным линкером возможны лишь дырки между РАЗНЫМИ секциями. Автоматом никто никуда ничего лить не будет. Ну а, например, IAR может работать и с рваными секциями. Интересуетесь как - почитайте доку на линкер от IAR. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VictorsProg 0 22 ноября, 2016 Опубликовано 22 ноября, 2016 · Жалоба Да. Посмотрите внимательно на объявление региона m_text2 в вашем скрипте. Заведите по аналогии свой регион в нужных адресах и кладите в него нужные секции. спасибо Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться