|
|
  |
свежак KGP win32/arm/avr/mips/m68k, GNU tools chain |
|
|
|
Apr 26 2011, 16:09
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
Цитата(klen @ Apr 26 2011, 12:03)  target kgp_arm_eabi ( 41 Mb) Докладываю  Во-первых, распаковалось опять с ругательствами, ну да мы уже привыкши  Итак, по шагам: 1. Исправить симлинк с именем lib64, чтоб указывал на папку lib (в mc встать на "lib64", F9-Файл-Правка ссылки, ввести "lib"); 2. Из второго архива, который с либами (kgp_x86_64-linux-gnu-lib-20110426.tar.7z), копируем в папку lib следующие файлы: Код libcloog.so.0 libcloog.so.0.0.0 libgmpxx.so.4 libgmpxx.so.4.1.2 libmpc.so.2 libmpc.so.2.0.0 libppl_c.so.4 libppl_c.so.4.0.0 libppl.so.9 libppl.so.9.0.0 libpwl.so.5 libpwl.so.5.0.0 Потом делаем sudo ldconfig /home/me/kgp/libИ всё начинает компилиться. К сожалению, мой тестовый проект не заработал, пока не знаю в чём дело.
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Apr 26 2011, 17:13
|

бессмертным стать можно тремя способами
    
Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912

|
Цитата(AHTOXA @ Apr 26 2011, 20:09)  К сожалению, мой тестовый проект не заработал, пока не знаю в чём дело. у меня вроде работают - FreeRTOS,USB,вычисления с плавучкой... еслиб че то вылезло гденибудь... найдете косяг сообщите в чем. а то малоли че - Родина в опасности! значит нада копипастить всего libcloog libgmpxx libmpc libppl_c libppl libpwl Я тут подумал... можно их статически залинковывать - тогда и головной боли не будет, что чтото забыть положить можно. например libmpfr, libiberty,... я не вижу в списке - значит какято часть либов статически влинковалось.. нада причесать все единообразно.
|
|
|
|
|
Apr 27 2011, 15:27
|
Группа: Участник
Сообщений: 12
Регистрация: 19-08-10
Пользователь №: 59 015

|
Здравствуйте, уважаемые.
Я использовал ранее в своих проектах только ARM7TDMI, GCC от kgp_arm_eabi и yagartoo. а сейчас пытаюсь переползать на Cortex-M3. Но никак не выходит то что надо, а надо: Cortex-M3 (STM32F103) and FreeRTOS and C++ and (kgp_arm_eabi or yagartoo)
Поделитесь пожалуйста файликами: скрипт линкера + startup + makefile если кто может.
Заранее спасибо.
Сообщение отредактировал AlexeyVoroshen - Apr 27 2011, 15:28
|
|
|
|
|
Apr 29 2011, 09:47
|
Группа: Участник
Сообщений: 12
Регистрация: 19-08-10
Пользователь №: 59 015

|
to АНТОХА:
спасибо, изучаю.
Сообщение отредактировал AlexeyVoroshen - Apr 29 2011, 09:48
|
|
|
|
|
May 25 2011, 04:41
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 12-05-11
Пользователь №: 64 958

|
Продолжаем мучать MIPS. Начали использовать FPU, даже заработало. Но только добавили в прогу cos & sin, как начались проблемы. Выяснили, что помимо math.h ld-шнику нужно добавлять библиотеку. Добавили -lm. Проблемы: -используем -mhard-float, ибо есть сопроцессор, а libm такое подозрение отбилдена под msoft-float. Ругается на не совместимость  -периодически ругается на ключ -G и размеры некого small-data section (кажется победили ключом -mno-gpopt). -начала возмущаться на использование memcpy (попробуем отключить его использование(-mno-memcpy), хотя она сама его юзает...) Вопросы: 1. Как можно пересобрать библиотеку libm (или все остальные тоже) под -mhard-float? 2. Нормально ли, что требуется пересобрать библиотеку, или я чего-то недопонял? 3. Что такое GP регистр(в проце есть такой регистр, но он не 64КБ), и почему возникают ошибки подобного рода? Код Small-data section exceeds 64KB; lower small-data size limit; (see option -G) Информации про этот -G кот наплакал  Даже не знаю где почитать.
Сообщение отредактировал Ash_snz - May 25 2011, 04:42
|
|
|
|
|
May 25 2011, 06:14
|

бессмертным стать можно тремя способами
    
Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912

|
Цитата(Ash_snz @ May 25 2011, 08:41)  Продолжаем мучать MIPS. Начали использовать FPU, даже заработало. Но только добавили в прогу cos & sin, как начались проблемы. Выяснили, что помимо math.h ld-шнику нужно добавлять библиотеку. Добавили -lm. Проблемы: -используем -mhard-float, ибо есть сопроцессор, а libm такое подозрение отбилдена под msoft-float. Ругается на не совместимость  -периодически ругается на ключ -G и размеры некого small-data section (кажется победили ключом -mno-gpopt). -начала возмущаться на использование memcpy (попробуем отключить его использование(-mno-memcpy), хотя она сама его юзает...) Вопросы: 1. Как можно пересобрать библиотеку libm (или все остальные тоже) под -mhard-float? 2. Нормально ли, что требуется пересобрать библиотеку, или я чего-то недопонял? 3. Что такое GP регистр(в проце есть такой регистр, но он не 64КБ), и почему возникают ошибки подобного рода? Код Small-data section exceeds 64KB; lower small-data size limit; (see option -G) Информации про этот -G кот наплакал  Даже не знаю где почитать. все правильно ругается - собрано для M4K из picс32 - там нет сопроцессора как я понима. что у вас за девайс с сопроцессором - очегь интересуюсь. могу сделать сборку - все тоже но с поддержкой плавучки, посмотрим что выйдет. нада пробывать. понимаете правильно - для любого ядра с какойто фичей (тут нада понимать - набор доп инструкций) нада все прересообирать для того чтоб сам компиллер юзал эти фичи при компиляции Вашего кода и библиотеки были собраны этим же компиллером с использованием фич. Так что все хорошо пока - хорошо когда явление объяснимо под какую хост-машину сборку нада сделать?
|
|
|
|
|
May 25 2011, 16:41
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 12-05-11
Пользователь №: 64 958

|
Цитата(klen @ May 25 2011, 12:14)  все правильно ругается - собрано для M4K из picс32 - там нет сопроцессора как я понима. что у вас за девайс с сопроцессором - очегь интересуюсь. могу сделать сборку - все тоже но с поддержкой плавучки, посмотрим что выйдет. нада пробывать. понимаете правильно - для любого ядра с какойто фичей (тут нада понимать - набор доп инструкций) нада все прересообирать для того чтоб сам компиллер юзал эти фичи при компиляции Вашего кода и библиотеки были собраны этим же компиллером с использованием фич. Так что все хорошо пока - хорошо когда явление объяснимо под какую хост-машину сборку нада сделать? Очень рад! Ваша помощь просто неоценима!  Проц, точнее система на кристалле называется 5890ВЕ1Т. Собрана она на базе MIPS проца архитектуры R3000. В составе имеет системный контроллер, сопроцессор для обработки чисел с плавающей запятой, помимо всего прочего там еще понапихано контроллер RS порта, контроллер PCI... в общем полна коробочка. Производит сей чудо зверь НИИИСИ РАН. Навскидку не назову названия системного контроллера ибо их там много, а букв еще больше. с работы уточню. Пока потихоньку заставляем это чудо работать. добрались до математики и приплыли... Что еще нужно учесть, чтобы сборку сделать? Мы пока уткнулись в основном только в -mhard-float. остальное - худо-бедно... зы: работаем под винду. добавлено: может научите как пересобирать? или где почитать хотя бы, весь инет уже пролазили.
Сообщение отредактировал Ash_snz - May 25 2011, 16:42
|
|
|
|
|
Jun 17 2011, 05:42
|
Группа: Участник
Сообщений: 5
Регистрация: 13-06-08
Пользователь №: 38 263

|
Цитата(Ash_snz @ May 25 2011, 19:41)  Очень рад! Ваша помощь просто неоценима!  Проц, точнее система на кристалле называется 5890ВЕ1Т. Собрана она на базе MIPS проца архитектуры R3000. В составе имеет системный контроллер, сопроцессор для обработки чисел с плавающей запятой, помимо всего прочего там еще понапихано контроллер RS порта, контроллер PCI... в общем полна коробочка. Производит сей чудо зверь НИИИСИ РАН. Навскидку не назову названия системного контроллера ибо их там много, а букв еще больше. с работы уточню. Пока потихоньку заставляем это чудо работать. добрались до математики и приплыли... Что еще нужно учесть, чтобы сборку сделать? Мы пока уткнулись в основном только в -mhard-float. остальное - худо-бедно... зы: работаем под винду. добавлено: может научите как пересобирать? или где почитать хотя бы, весь инет уже пролазили. http://www.codesourcery.com/sgpp/lite/mips...tal/release1797Это для абстрактного r300 и MIPS вообще. Lite версия полностью free и с всеми исходниками Для 5890ВЕ1Т кажется нужно еще патч на специфику процессора
|
|
|
|
|
Jun 19 2011, 06:59
|
Участник

Группа: Участник
Сообщений: 32
Регистрация: 12-05-11
Пользователь №: 64 958

|
Цитата(TJ27 @ Jun 17 2011, 11:42)  http://www.codesourcery.com/sgpp/lite/mips...tal/release1797Это для абстрактного r300 и MIPS вообще. Lite версия полностью free и с всеми исходниками Для 5890ВЕ1Т кажется нужно еще патч на специфику процессора Спасибо, будем пробовать. Пока удалось запустить hard-float на некой библиотеке, найденной в недрах kgp  , но к сожалению без fast-math. очередная проблема: после успешной борьбы с _gp заработали глобальные переменные, но выяснилось, что static прописывается в ПЗУ и изменить свое значение пытается там же, что недопустимо. Видимо нужно переделывать ld файл, дабы корректно объяснить линкеру в каких областях живет озу и пзу. знать бы как... литературы маловато. кто подскажет где почитать как можно полнее про организацию ld? зы жаль, Клен ушел в отпуск...
|
|
|
|
|
Jun 19 2011, 11:53
|

бессмертным стать можно тремя способами
    
Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912

|
..в отпуск.. ага щаззззз. а кто это такой отпуск??? я его уже 15 лет не видел.. в гробу отдохнем. Вы мне плату комдивчиком подарите, лучше с 64 битным- я Вам не только LD, я Вам весь "курятник дострою"  свежак для ARM хост x86_32 http://klen.org/Files/DevTools/arm-kgp-eab..._32-20110619.7zхост x86_64 http://klen.org/Files/DevTools/arm-kgp-eab..._64-20110619.7zсвежак WinGW хост x86_32 http://klen.org/Files/DevTools/i686-kgp-mingw32-20110619.7zхост x86_64 http://klen.org/Files/DevTools/x86_64-kgp-...w32-20110619.7z2_Ash_snz сделал для Вас сборку которая будет собирать код для 5890ВЕ1Т с использованием инструкций сопроца, libm также собрана c поддерхкой сопроца. про fast-math Вы не заказывали - поэтому я не учел. проробуте сначало что с этим получится, если все ок то перекомпилю с -mfast-math есть один прикол - пол линуксом все работет как часы, пересобраный под x86_32 ld ругается что мы его заставляем собирать выходной ELF без флагов поддержки fpu из объектников скомпиленных с поддержкой fpu - заявление довольно странное и глупое... но видимо под виндой все через жопу работает, даже ровный софт становится кривым. Не обращать внимания. потом возможно доковыряю этот косячог. выходной код генерится по умолчанию для R3000 с подержкой инструкций FP если других ключей меняющих это не указано, эквивалентно -march=r3000 -mhard-float. собрано лоя хоста x86_32 одним словом, парни, ЖГИТЕ КОД ДЛЯ КОМДИВЧИКА!!! и обязательно сообщите че там на выходе получите, очень уж хочется в родном отечестве доброе дело сделать. да и mips на фезюляж нарисовать не плохо. http://klen.org/Files/DevTools/mips-kgp-el..._32-20110619.7z
|
|
|
|
|
  |
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|