Re: Разработка для ARM

Sep 22, 2003 0 Replies

Hello Denis,



DS> Планируется сотворить девайс на ARM'е, скорее всего AT91R40008. DS> Средство разработки - gcc.



Я использовал GCC 3.1 порт для ARM на платформе Win32. В собранном виде есть на

formatting link
(версию 1.1 я по-крайней мере пользовал на Win98SE, как я помню еще пару DLL-ок цыгвына требовалось).



DS> Кто-нибудь такое делал? Интересует ряд тонкостей:



DS> Как получить бинарник для прошивки из ELF? Или это делается



При помощи линкера ld cтроишь .elf (при этом линкеру подсовываешь скрипт, в котором указываешь где у тебя RAM/ROM). Потом на .elf напускаешь ObjCopy. Я все тулзы брал из указанного выше пакета. В качестве make использовал nmake от MS (ну привык я к нему), если хочешь могу .mak файл прислать. Как IDE юзался старый BC3.1 (просто я фильтры сообщений компиляторов к нему насобачился писать, да и на асме в нем удобнее), потом попробовал еще MSVC 6.0. Но под него машина тогда была слабовата (из-за проблем редиректора stderr<->stdout надо было ставить W2K).



DS> специально заточенным линкером? Как ему указать, где располагать код, DS> и где данные? Бывает ли готовый стартап-код, или придётся писать DS> самому? Может, FAQи на эту тему есть хорошие?



Я не пользовал CRTL и ОС, поэтому стартап писал сам - инициализация чипа (Samsung S3C44), контроллера SDRAM.



Кстати, у меня были сложности с линковкой библиотеки C-поддержки (процедура деления, кажись и пара сложных прологов). Пришлось библиотеку "распустить" и явно линковать нужные объектники.



В-общем, привыкал я gcc тулзам неделю примерно, очень хелпы уж неудобные, ценные куски раскиданные по разным местам, с непривычки долго ковырялся - "выкачай то, выкачай это, туда не ходи (типа старая версия), сюда ходи" (вот бы что-то типа MSDN collection бы туды - вся инфа для разработчика в одном флаконе и красиво упакованная, в этом смысле OpenSource прилично отстает ИМО). Много нужных вещей я в хелпах не нашел (например, локальные метки в as, потом наткнулся в примерах, комментарии как-то странно начинаются (не с ';') Зато как makefile составил и barebone проекта собрал - дальше впечатления самые приятные. Для ARM генерирует очень неплохо, часто совпадало с моим ассемблерным представлением.


Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required