Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: avr-gcc и IAR
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > GNU/OpenSource средства разработки
Страницы: 1, 2
klen
Цитата(demiurg_spb @ Mar 2 2011, 17:50) *
Я готов потестить под различными версиями gcc.

.... а как я готов!!! готовее меня есть кто ?? sm.gif

предлагаю архитектуру проекта.
0. используем компонентный подход
1. проект представляет собой основной модуль - FreeRTOS
2. далее модули, реализующие часто встречающиеся или не часто задачи из предметной области оформленные в виде библиотек, юзабельные в тестовых задачах FreeRTOS,
3, две версии - одна чистый С, вторая версия смесь С/С++/Fortran пережовывемые компиллеров в едином сборочном проъекте.

что нам это даст.
0.модульность и взаимозаменяймость.
1, при желании практически полную независимость модулй
2, возможность набирать тестовый набор модулей наиболее соответствующему требуемому испытанию.
3, простата измерения размера модулей(возможно напишу утилсу которая лазит по elf и считает то что нужно по отдельности) и их скорости на контрольной трассе (средствами FreeRTOS).
4. комплексная оценка совместной работы с другими модулями и FreeRTOS.

что имею.
0, Шаблон проекта посторенного по вышеописанному
1, готове модули
а) решение системы нелинейных уравнений на С
б) модуль на Фортране реализующий ЧМ демодулятор комплексного сигнала на нулевой промежутке.
в) хороший такой тест шаблонов STL на С++. кстате сам удивился когда оказалось что можно эффективно использовать на микроконтроллерах.
г) могу сделать страницу на своем портале посвещенную всему этому театральному действу, сделать SVN репозиторий для проекта, раздать права на запись наиболее горячмим джигитам, права на чтения "бесплатно"

ну вот както так. ессесено все это борахло будет компилятся для avr и arm. я собсно кортексы в хвост и гриву ..... оттестю.
мой мотив проистекает из интереса к скорости генерируемого кода - всегда борюсь за наносекунды, за десятки байтов както не приходилось - ниразу не смог написать столько кода чтоб невлазило, обысно грамотное проектирование в мозгу и на доске с мелом в виде схем ужимает код лучше любого компиллера.

хотелось бы чтоб тема не заглохла а превратилась в феерическое представлнеие траха мозка и отжига - нада ж както отдыхать ....
demiurg_spb
FreeRTOS и чистый СИ - не понял как мы это сможем сбилдить с ключиками
--combine -fwhole-program, раз уж мы хотим выжать из gcc по максимуму...

Какие-либо "относительно стандартные" тесты существуют?

Предлагаю из модулей подцепить:
free-modbus
fatfs
и какую-нибудь GUI-библиотечку.

насчёт SVN - одобрямsm.gif

MrYuran
Цитата(demiurg_spb @ Mar 3 2011, 12:41) *
FreeRTOS и чистый СИ - не понял как мы это сможем сбилдить с ключиками
--combine -fwhole-program, раз уж мы хотим выжать из gcc по максимуму...

Скорее наоборот, с плюсами проблемы будут, FreeRTOS на чистом си написан
Хотя опять же не вижу проблемы. Сишные исходники скомпилить оптом с этими ключами, а с++ модуль прилинковать отдельно
demiurg_spb
Цитата(MrYuran @ Mar 4 2011, 09:42) *
Скорее наоборот, с плюсами проблемы будут, FreeRTOS на чистом си написан
от ScmRtos навелось...

Цитата
Сишные исходники скомпилить оптом с этими ключами, а с++ модуль прилинковать отдельно

Вы так пробовали? Я что-то сильно сомневаюсь что так можно. Ключик-то называется ВСЯ программа -fwhole-program.
При таком способе компиляции вроде как даже и объектные файлы-то не создаются.
MrYuran
Цитата(demiurg_spb @ Mar 4 2011, 13:50) *
Вы так пробовали? Я что-то сильно сомневаюсь что так можно. Ключик-то называется ВСЯ программа -fwhole-program.
При таком способе компиляции вроде как даже и объектные файлы-то не создаются.

Вот, баловался летом...
Код
#
#$(NAME).elf : $(CSRC)
#    @echo $^
#    @$(CC) -c $(CFLAGS) -combine -fwhole-program $^ $(LDFLAGS) -o $(NAME).o
#    $(CC) $(NAME).o $(LDFLAGS) -o $@

Создаётся один обобщённый объектник из пачки исходников, который потом линкуется на общих основаниях
_Pasha
Блин, забыли про такую сущность, как Pascal Stang
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.