реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> новый линкер иара - новый синтаксис скрипта, Помогите
vova7890
сообщение Nov 19 2010, 23:07
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



В общем в пятом иаре столкнулся с новым синтаксисом скрипта линкера. Долго думал как портировать старый скрипт на новый - ничего толкового не получилось. В общем вот старый скрипт от 4-го иара
Код
-V(CODE)CODE_A
-V(CODE)DATA_A

-Z(CODE_A)ELFBEGIN,DATA_ID,START,CODE,DATA_C,HEAP,LIB,LIB_C,DIFUNCT,ICODE,INITTAB,DATA
_Z,DATA_N,CONFIG_C=0-0xFFFFFFFF
-Z(DATA_A)DATA_I=0-0xFFFFFFFF


очень надеюсь на вашу помощь smile.gif

Сообщение отредактировал vova7890 - Nov 19 2010, 23:08
Go to the top of the page
 
+Quote Post
vova7890
сообщение Nov 20 2010, 01:08
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



зы. Блин не заметил тему про иар, перенесите если что smile.gif
Go to the top of the page
 
+Quote Post
Xenia
сообщение Nov 20 2010, 01:36
Сообщение #3


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(vova7890 @ Nov 20 2010, 02:07) *
В общем в пятом иаре столкнулся с новым синтаксисом скрипта линкера.

Уже вышел шестой иар, так может сразу на него портируем?
Go to the top of the page
 
+Quote Post
vova7890
сообщение Nov 20 2010, 04:28
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



А че в шестом иаре синтаксис сильно отличается? Мне пятого хватит. Не зачтите меня за нуба, я как видите в первые у вас на форуме, просто ничего не получалось и при поиске инфы наткнулся на этот форум, решил зарегатся smile.gif
Go to the top of the page
 
+Quote Post
skripach
сообщение Nov 20 2010, 12:47
Сообщение #5


■ ■ ■ ■
*****

Группа: Свой
Сообщений: 1 100
Регистрация: 9-08-06
Пользователь №: 19 443



Цитата
я как видите в первые у вас на форуме

Ну так потрудились бы поискать более подходящую ветку для создания темы.
http://electronix.ru/forum/index.php?showforum=137
по теме, смотрите примеры в том же иаре, там жеж не сложно вроде.


--------------------
Делай что должен и будь что будет.
Go to the top of the page
 
+Quote Post
vova7890
сообщение Nov 20 2010, 13:32
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



ну, я как бы спешил, просто нашел тему про арм, запостил и ушёл. Я ж сказал чтоб перенесли smile.gif Я смотрел ироские все скрипты пересмотрел все что мог перепробывал не получается. У меня загрузчик ельфов специфический, таблицу релоков ищет в динамическом сегменте. Если легко так может быть подскажеш? smile.gif
Go to the top of the page
 
+Quote Post
Xenia
сообщение Nov 20 2010, 21:23
Сообщение #7


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(vova7890 @ Nov 20 2010, 07:28) *
А че в шестом иаре синтаксис сильно отличается? Мне пятого хватит.

На мой взгляд, никак не отличается, но я АРМы не программирую, поэтому подробностей не знаю. Обычно там всякие примочки дополнительно добавляются, а старый синтаксис обычно не трогают. А 5-х ИАРов уже вышло 16 (!) штук версий, тогда как 6-я версия только одна - свеженькая, 12 дней назад вышла.
А вы, как я поняла, все равно с 4-го ИАРа мигрируете и на 5-ом еще не работали. Вот и посоветовала.
Go to the top of the page
 
+Quote Post
vova7890
сообщение Nov 21 2010, 06:26
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



Цитата(Xenia @ Nov 21 2010, 00:23) *
На мой взгляд, никак не отличается, но я АРМы не программирую, поэтому подробностей не знаю. Обычно там всякие примочки дополнительно добавляются, а старый синтаксис обычно не трогают. А 5-х ИАРов уже вышло 16 (!) штук версий, тогда как 6-я версия только одна - свеженькая, 12 дней назад вышла.
А вы, как я поняла, все равно с 4-го ИАРа мигрируете и на 5-ом еще не работали. Вот и посоветовала.


да я с четвертого мигррирую ис за парочки не приятных багов которые уже достали. В принцыпе мне без разницы на какую версию лижбы выше 4-той. Видимо никто не хочет помочь sad.gif
Go to the top of the page
 
+Quote Post
Xenia
сообщение Nov 21 2010, 07:10
Сообщение #9


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(vova7890 @ Nov 21 2010, 09:26) *
Видимо никто не хочет помочь sad.gif

На вид скрипт линкера не менялся. А может быть всё дело в том, что это вы по ошибке строку разорвали на две части. Слитно это надо писать:
Код
-Z(CODE_A)ELFBEGIN,DATA_ID,START,CODE,DATA_C,HEAP,LIB,LIB_C,DIFUNCT,ICODE,INITTAB, DATA_Z,DATA_N,CONFIG_C=0-0xFFFFFFFF

Вот линкер и ругается. Или это форум строку разорвал?

Или вообще выкиньте из проекта эти установки линкера - на дефолтных сначала скомпилите. Скорее всего какой-то из сегментов изменил имя, в том и проблема. Поглядите, как выглядит стандарный хидер для линкера. Как там эти сегметы называются. Или скомпилируйте что-нибудь с установками линкера по умолчанию, а потом в листинге поглядите, как он сегменты обзывает.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Nov 21 2010, 08:12
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (Xenia @ Nov 21 2010, 10:10) *
На вид скрипт линкера не менялся.

smile.gif ничего общего после перехода ARM ветки на binutils скрипты не имеют. Однако, общие принципы миграции толково описаны в Migration Guide из комплекта поставки.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
vova7890
сообщение Nov 21 2010, 10:14
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



Цитата(Xenia @ Nov 21 2010, 10:10) *
На вид скрипт линкера не менялся. А может быть всё дело в том, что это вы по ошибке строку разорвали на две части. Слитно это надо писать:
Код
-Z(CODE_A)ELFBEGIN,DATA_ID,START,CODE,DATA_C,HEAP,LIB,LIB_C,DIFUNCT,ICODE,INITTAB, DATA_Z,DATA_N,CONFIG_C=0-0xFFFFFFFF

Вот линкер и ругается. Или это форум строку разорвал?

Или вообще выкиньте из проекта эти установки линкера - на дефолтных сначала скомпилите. Скорее всего какой-то из сегментов изменил имя, в том и проблема. Поглядите, как выглядит стандарный хидер для линкера. Как там эти сегметы называются. Или скомпилируйте что-нибудь с установками линкера по умолчанию, а потом в листинге поглядите, как он сегменты обзывает.



неа там синтаксис вообще другой полностью.


Цитата(zltigo @ Nov 21 2010, 11:12) *
smile.gif ничего общего после перехода ARM ветки на binutils скрипты не имеют. Однако, общие принципы миграции толково описаны в Migration Guide из комплекта поставки.


вы о чем? При чем тут бинутилсы? Я про иар говорю же :-D Общие принципы читал делал по примерам но оно не пашет! Не находит лоадер в динамическом сегменте таблицу релоков!!!

Сообщение отредактировал vova7890 - Nov 21 2010, 10:14
Go to the top of the page
 
+Quote Post
vova7890
сообщение Nov 22 2010, 08:26
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



Вот че я напортировал, работает не правильно...

CODE
define symbol __ICFEDIT_intvec_start__ = 0x0;
/*-Memory Regions-*/

define symbol __ICFEDIT_region_RAM_start__ = 0;
define symbol __ICFEDIT_region_RAM_end__ = 0xFFFFFF;

/**** End of ICF editor section. ###ICF###*/


define memory mem with size = 4G;


define region CODE_AREA = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
define region DATA_AREA = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];

define block CODE { section ELFBEGIN, section START,
section .text, section .rodata, section HEAP,
section .difunct, section .textrw, section .bss,
section .noinit, section CONFIG_C, section CODE, section .iar.init_table, section .dynamic, section .data_init};

define block DATA with alignment = 0, size = 0
{
section .data
};

initialize by copy { readwrite };
do not initialize { section .noinit };

place in CODE_AREA { block CODE };
place in DATA_AREA { block DATA };
Go to the top of the page
 
+Quote Post
ih_
сообщение Nov 24 2010, 07:58
Сообщение #13


Частый гость
**

Группа: Свой
Сообщений: 77
Регистрация: 2-04-08
Из: Россия, Киров
Пользователь №: 36 422



Цитата(vova7890 @ Nov 20 2010, 02:07) *
очень надеюсь на вашу помощь smile.gif
Приведите пример управляющего файла от 4-й версии. А также список ошибок линкера?
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 23:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.0138 секунд с 7
ELECTRONIX ©2004-2016