|
скрипт Linkera |
|
|
|
Jan 24 2009, 17:43
|
Гуру
     
Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923

|
Помогите разобраться с скриптами для linkera. Yagarto eclips at91sam7s256 После компиляции, создаются два объектных файла crt.o main.o сделал самый простейший скрипт,который должен разместить секции text в ram и data в flash. После того как проходит компиляция компоновка, копирование получаю файл hex, при попытки его загрузить с помощью h jtag выходит ошибка что память ухотит за пределы, пробовал адреса ставить 0ч0 и 0ч100000 такаже проблема. Подозреваю что ошибка в скрипте. CODE OUTPUT_FORMAT("elf32-littlearm") /* формат памяти. прямой порядок байт (Little-endian). */ OUTPUT_ARCH(arm) /* архитектура АРМ */
_vec_reset = 0x0;
_stack_end = 0x20FA00; /* конец стека (верх стека) */
ENTRY(_vec_reset) /* вектор сброса */
/* Память микроконтроллера AT91SAM7S256 */ MEMORY { flash (rx) : ORIGIN = 0x100000, LENGTH = 256K /* FLASH EPROM */ ram (rw) : ORIGIN = 0x200000, LENGTH = 64K /* static RAM area */ }
SECTIONS {
.text : { *crt.o (.text) }>flash . = ALIGN(4);
.data : { *crt.o (.data) }> ram . = ALIGN(4);
.bss : { *(.bss) *(COMMON) }>ram . = ALIGN(4); }
|
|
|
|
|
 |
Ответов
|
Jan 25 2009, 18:35
|
Гуру
     
Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923

|
Цитата Прямо так и выходит? Как это "память уходит"? За пределы чего? Поясни, пожалуйста, суть ошибки, ничего не понятно. Ошибка на картинке.
Цитата Если ничего неправильного не видишь, то есть все секции размещены по тем адресам, какие требовались, отчего тогда подозрения на скрипт и вообще линкер? Подозревай h jtag, из которого выходит ошибка непонятная... Подозрение потому что не разу ими не пользовался. по поводу секций вроде все правильно , сомнения вызывают .debug_info 0x00000000 0x4d4 где они должны располагаться ? H jtag прошивал нормально, hex от keil.
|
|
|
|
|
Jan 26 2009, 10:37
|

Местный
  
Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091

|
Цитата(sergey sva @ Jan 25 2009, 23:35)  Ошибка на картинке. Спасибо, стало чуть-чуть более понятно, хотя все равно недостаточно. Из левого сообщения понятно, что размер какого-то файла превышает размер flash. Что именно эта программа подразумевает под source file? Размер hex-файла (это было бы странно)? Размер содержащихся в нем аднных? Пока могу предположить следующее: слова "target flash" наводят на мысль, что программа интерпретирует все данные, содержащиеся в hex файле как данные, которые требуется рвзместить во flash. У тебя же там на самом деле содержатся не только данные flash, но и данные ОЗУ. На эту же мысль наводит и правое сообщение об ошибке - если программа трактует аднные для ОЗУ как данные для flash, то с ее точки зрения адрес расположения этих данных оказывается неверным (не попадает в диапазон адресов flash). Возможно, прграмма не может получать и то и другое одновременно в одном файле, ей требуется давать отдельно данные flash и отдельно данные ОЗУ - каждый в своем отдельном файле. А может быть программа ожидает, что данные в hex файлы должны располагалься с адреса 0, может она сама нужные смещения (базовый адрес flash) к адресам прибавляет? В любом случае требуется изучение документации именно на эту программу чтобы понять, какие именно входные данные и в каком виде ей требуются. Цитата(sergey sva @ Jan 25 2009, 23:35)  Подозрение потому что не разу ими не пользовался. по поводу секций вроде все правильно , сомнения вызывают .debug_info 0x00000000 0x4d4 где они должны располагаться ? Должны кому? Программе H-Flasher? Это надо смотреть в ее документации. Вполне возможно, что они ей вообще не нужны. Линкер - существо простое, куда ему скажут (в скрипте) данные положить, туда он их и положит, ему-то все равно. Вопрос в том, что требуется получить. А это - вопрос к программе, которая потом результат работы линкера будет использовать.
--------------------
Всего наилучшего, Alex Mogilnikov
|
|
|
|
|
Jan 27 2009, 13:26
|
Знающий
   
Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246

|
Как здесь разместить вектора перерывания по указанному адресу? (аналог IAR : Код place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec }; )
Сообщение отредактировал Vitaliy_ARM - Jan 27 2009, 13:27
--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
|
|
|
|
Сообщений в этой теме
sergey sva скрипт Linkera Jan 24 2009, 17:43 Сергей Борщ Цитата(sergey sva @ Jan 24 2009, 19:43) П... Jan 24 2009, 19:23 sergey sva фот файл map, не чего неправильного не вижу, конеч... Jan 25 2009, 17:23 alx2 Цитата(sergey sva @ Jan 24 2009, 22:43) п... Jan 25 2009, 18:19   alx2 Цитата(Vitaliy_ARM @ Jan 27 2009, 18:26) ... Jan 28 2009, 10:45    Vitaliy_ARM Цитата(alx2 @ Jan 28 2009, 13:45) КодSECT... Jan 28 2009, 15:04     Vitaliy_ARM Задам еще, наверное глупый вопрос.
Может ли кто-ни... Jan 29 2009, 10:52     alx2 Цитата(Vitaliy_ARM @ Jan 28 2009, 20:04) ... Jan 29 2009, 14:03 sergey sva Уже какой день разбираюсь, но все еще не могу полу... Jan 30 2009, 17:16 amw Цитата(sergey sva @ Jan 30 2009, 19:16) У... Jan 30 2009, 18:19 sergey sva Помогло
хотел попробовать запустить отладчик ... Jan 30 2009, 19:23 Vitaliy_ARM Цитата(sergey sva @ Jan 30 2009, 22:23) П... Feb 2 2009, 08:28 sergey sva Пробую запустить openocd , не запускается пишет ош... Feb 2 2009, 21:21 gotty судя по всему Вы используете довольно свежую верси... Feb 3 2009, 08:23  sergey sva Цитата(gotty @ Feb 3 2009, 11:23) судя по... Feb 3 2009, 13:52   gotty Цитата(sergey sva @ Feb 3 2009, 15:52) со... Feb 3 2009, 14:02    sergey sva Цитата(gotty @ Feb 3 2009, 17:02) Ответ с... Feb 3 2009, 14:07     gotty Цитата(sergey sva @ Feb 3 2009, 16:07) я ... Feb 3 2009, 14:21      sergey sva Цитата(gotty @ Feb 3 2009, 17:21) Всё вер... Feb 3 2009, 15:33       gotty Цитата(sergey sva @ Feb 3 2009, 17:33) Ус... Feb 3 2009, 15:47        sergey sva Цитата(gotty @ Feb 3 2009, 18:47) А чего ... Feb 3 2009, 16:13         sergey sva ошибки были это сам не правильно запуска(повторно)... Feb 3 2009, 19:36          Vitaliy_ARM Цитата(sergey sva @ Feb 3 2009, 22:36) од... Feb 4 2009, 10:43           amw Цитата(Vitaliy_ARM @ Feb 4 2009, 12:43) А... Feb 4 2009, 12:13            Vitaliy_ARM Цитата(amw @ Feb 4 2009, 15:13) Хм. Я тож... Feb 4 2009, 12:54             sergey sva Цитата(Vitaliy_ARM @ Feb 4 2009, 15:54) П... Feb 4 2009, 13:26              Vitaliy_ARM Цитата(sergey sva @ Feb 4 2009, 16:26) по... Feb 4 2009, 13:36             amw Цитата(Vitaliy_ARM @ Feb 4 2009, 14:54) П... Feb 4 2009, 19:11              Vitaliy_ARM Цитата(amw @ Feb 4 2009, 22:11) 0xe01fc04... Feb 5 2009, 08:51               Vitaliy_ARM Заметил такую штуку.
Когда использовал GDB сервер... Feb 6 2009, 12:24 alx2 Цитата(sergey sva @ Feb 3 2009, 02:21) Во... Feb 3 2009, 13:03 sergey sva Еще есть одна непонятная ситуация, может что подск... Feb 3 2009, 20:38 gotty Цитата(sergey sva @ Feb 3 2009, 22:38) Ещ... Feb 4 2009, 14:32  sergey sva Цитата(gotty @ Feb 4 2009, 17:32) Возможн... Feb 4 2009, 15:04 sergey sva У меня обратная проблема,пока wigller подключен пр... Feb 4 2009, 12:13 alx2 Цитата(sergey sva @ Feb 4 2009, 17:13) но... Feb 5 2009, 10:48  sergey sva Цитата(alx2 @ Feb 5 2009, 13:48) По повод... Feb 5 2009, 17:52   amw Цитата(sergey sva @ Feb 5 2009, 19:52) По... Feb 5 2009, 18:58 sergey sva компиляция линкование и ассемблирование проходит б... Feb 4 2009, 16:29 sergey sva Спасибо теперь все работает. причина была : секци... Feb 5 2009, 19:43 amw Цитата(sergey sva @ Feb 5 2009, 21:43) Сп... Feb 5 2009, 19:48 _Pasha Подскажите, уважаемые, как бороться с такой чепухо... Apr 30 2009, 08:54 amw Цитата(_Pasha @ Apr 30 2009, 11:54) Подск... Apr 30 2009, 15:33 Сергей Борщ Цитата(_Pasha @ Apr 30 2009, 11:54) Пишу ... Apr 30 2009, 20:33 _Pasha Всем спасибо.
Отключил -mshort-calls проблема ушл... May 3 2009, 12:23 SysRq Цитата(_Pasha @ May 3 2009, 16:23) Отключ... May 3 2009, 13:20  Vitaliy_ARM Можно ли как-нибудь создать один регион памяти из ... Sep 7 2009, 13:04   Vitaliy_ARM Цитата(Vitaliy_ARM @ Sep 7 2009, 17:04) М... Sep 10 2009, 10:52    Vitaliy_ARM После длительной переписки со службой поддержки вы... Sep 14 2009, 08:17     Сергей Борщ Цитата(Vitaliy_ARM @ Sep 14 2009, 11:17) ... Sep 14 2009, 08:54      Vitaliy_ARM Цитата(Сергей Борщ @ Sep 14 2009, 12:54) ... Sep 14 2009, 09:42       Vitaliy_ARM После разговора со службой поддержики. И после тог... Sep 15 2009, 11:16     alx2 Цитата(Vitaliy_ARM @ Sep 14 2009, 13:17) ... Sep 17 2009, 13:14      Vitaliy_ARM Цитата(alx2 @ Sep 17 2009, 17:14) Наверно... Sep 21 2009, 08:17
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|