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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Резервирование области памяти праграмм
Airy
сообщение Apr 27 2009, 14:14
Сообщение #16





Группа: Новичок
Сообщений: 12
Регистрация: 24-04-09
Из: UA,Харьков
Пользователь №: 48 229



Блин!!! Удаляю папку, переименовываю, что угодно с ней делаю, все равно работает и линкует
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Apr 27 2009, 14:31
Сообщение #17


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



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


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
Airy
сообщение Apr 27 2009, 15:42
Сообщение #18





Группа: Новичок
Сообщений: 12
Регистрация: 24-04-09
Из: UA,Харьков
Пользователь №: 48 229



Цитата(mdmitry @ Apr 27 2009, 17:31) *
Попробуйте собрать не из студии, а с помощью make из командной строки. В этом случае Вы получаете полный контроль над сборкой, используя makefile. Только сделайте makefile сами, а не используйте сгенерированный студией. Посмотрите, не насовала ли студия в Ваш каталог с проектом каких-либо файлов для сборки.


Уже сделал. Ни фига. Мэйкфайл создал в утилитке к WINAVR с одноименным названием, Из Programmers Notepad запустил сборку, собирал все в отдельном каталоге, в смысле скопировал исходники из папки где со студией работал в другую, эффект тот же, переиминовывай удаляй скрипты все до лампочки ... ???

Удалил все файлы со скриптами, результат тот же??? Что делать?

В папке с набором скриптов есть скрипты для различных случаев линковки, я так понимаю у меня "normal executables" а контроллер ATTINY2313 принадлежит к avr2 классу попробую изменить этот скрипт. Скопирую его в папку с проектом, переименую и укажу его линкеру явно. Я правильно делаю?

Какие предложения еще, господа???
Go to the top of the page
 
+Quote Post
alx2
сообщение Apr 28 2009, 11:40
Сообщение #19


Местный
***

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



Цитата(Airy @ Apr 27 2009, 20:42) *
...переиминовывай удаляй скрипты все до лампочки ... ???
Удалил все файлы со скриптами, результат тот же??? Что делать?
Позвольте узнать, а в чем цель всех этих странных действий? Зачем удалять или переименовывать файлы? Поскольку цель неясна, трудно ответить, что делать...
Если честно, вопрос напоминает что-то типа: "Стреляю себе в ногу, а мне не больно. Пробовал из пистолета, из автомата, из огнемета - все равно могу ходить. Что делать?". smile.gif


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post
Airy
сообщение Apr 28 2009, 16:55
Сообщение #20





Группа: Новичок
Сообщений: 12
Регистрация: 24-04-09
Из: UA,Харьков
Пользователь №: 48 229



Цитата(alx2 @ Apr 28 2009, 14:40) *
Позвольте узнать, а в чем цель всех этих странных действий? Зачем удалять или переименовывать файлы? Поскольку цель неясна, трудно ответить, что делать...
Если честно, вопрос напоминает что-то типа: "Стреляю себе в ногу, а мне не больно. Пробовал из пистолета, из автомата, из огнемета - все равно могу ходить. Что делать?". smile.gif

По моему цель ясна, если прочитать всю ветку.
Для тех кто не читал:
Необходимо в Атини2313 выделить участок во флеше размером 512 байт, с известным адресом и варавниванием на границу страницы (16 байт), для того что бы прога там могла записывать данные и считывать конечно.
Для этого необходимо внести в скрипт изменения. Как узнать какой скрипт линкера? В лоб - изменить имя папки со скриптами линкер ругнется "мол файл такой то отсутствует" посмотрю какой, его и буду менять, конечно же предварительно скопировав и переименовал что бы не путаться.

Задача в принципе решена уже, скрипт вытянул, правда какой определил не в лоб, а по лбу :-) добавил секцию и разместил её по нужному адресу, создал массив с атрибутом указывающим хранить его в этой секции.

Спасибо всем,и отдельно тем кто отвечал по существу!!! a14.gif
Go to the top of the page
 
+Quote Post
alx2
сообщение Apr 29 2009, 09:32
Сообщение #21


Местный
***

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



Цитата(Airy @ Apr 28 2009, 21:55) *
По моему цель ясна, если прочитать всю ветку.
Для тех кто не читал:
Необходимо в Атини2313 выделить участок во флеше размером 512 байт, с известным адресом и варавниванием на границу страницы (16 байт), для того что бы прога там могла записывать данные и считывать конечно.
Для этого необходимо внести в скрипт изменения.
Как узнать какой скрипт линкера?
А зачем его узнавать-то? Нужно просто дать линкеру другой (свой собственный) скрипт. Как дать линкеру нужный скрипт, в этой ветке уже писали (для тех кто не читал: с помощью опции -T). А вносить изменения в файлы из состава binutils - очень плохая идея. Хотя бы потому что после любой переустановки binutils измененный файл снова перепишется исходным (дистрибутивным), и внесенные в него изменения пропадут. Право же, мне кажется, Вы тратите свое время на совершенно ненужные вещи.

Сообщение отредактировал alx2 - Apr 29 2009, 09:41


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post
SysRq
сообщение Apr 29 2009, 09:55
Сообщение #22


Чайник, 1 литр
****

Группа: Свой
Сообщений: 655
Регистрация: 17-05-06
Из: Moscow
Пользователь №: 17 168



Цитата(alx2 @ Apr 29 2009, 13:32) *
А зачем его узнавать-то?
Чтобы взять за основу, очевидно smile.gif Внести изменения, использовать затем.
Go to the top of the page
 
+Quote Post
amw
сообщение Apr 29 2009, 14:31
Сообщение #23


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Цитата(SysRq @ Apr 29 2009, 12:55) *
Чтобы взять за основу, очевидно smile.gif Внести изменения, использовать затем.

Код
avr-ld --verbose > default.lds

В начале вывода будет общая инфа. Ее нужно удалить.
Собственно скрип начинается со строки
Код
* Default linker script, for normal executables */

В конце удалить все строки после последней закрывающей скобки

PS: Скрипт по умолчанию намертво вкомпилен в ld. Это не файл. Либо Вы укажете свой скрипт опцией -T<file_name> либо будет использоватся дефолтный.


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
alx2
сообщение Apr 30 2009, 10:44
Сообщение #24


Местный
***

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



Цитата(SysRq @ Apr 29 2009, 14:55) *
Чтобы взять за основу, очевидно smile.gif Внести изменения, использовать затем.
За основу - это другое дело. За основу можно взять любой скрипт из директория ldscripts - они почти ничем не различаются. Узнавать, какой именно файл читается линкером по умолчанию, для этого не нужно. А я-то думал, Airy хочет найти этот файл и прямо в него внести изменения... smile.gif


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post

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

 


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


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