Перейти к содержанию
    

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

 

4.0.1 - это чтото жутко старое

 

Фортран не годится, именно Ада потребна :) А в 4.0.1 наткнулся на ошибку компилятора (падает на совершенно корректном исходнике), посему и нужен переход на новую версию. Под кыгвином собственно кыгвиновский 4.3.какой-то мне собрать удавалось, но вот кросс-компилятор -- ни в какую...

 

до чего манагеры негров довели - до цегундера! аду на AVR - такое только "могуы из верхнего руковдства" могут изобрести. сразу вспомнилось содержание книги Эдварда Йордана - "Путь камикадзе" :)

 

Ну почему ж... Мне интересно было б глянуть, что из этого выйдет (если выйдет), хотя на практике под AVR пишу только на асме -- си/си++ терпеть не могу за ужасный синтаксис и провоцирование нелепых ошибок, а посему ну их куда подальше :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

> си/си++ терпеть не могу за ужасный синтаксис и провоцирование нелепых ошибок, а посему ну их куда подальше :)

 

ааа.... а я то думаю! я все понял - "вам нужны шашечки, а не ехать"

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

> си/си++ терпеть не могу за ужасный синтаксис и провоцирование нелепых ошибок, а посему ну их куда подальше :)

 

ааа.... а я то думаю! я все понял - "вам нужны шашечки, а не ехать"

 

Как раз наоборот -- ехать, а не стоять из-за сплошных трудноуловимых багоглюков. Конечно, можно заявлять, что-де сам виноват, если по невнимательности пишешь && вместо & и т.п., но... Лично я предпочитаю, чтобы язык просто не допускал возникновения подобных ошибок. Ада соответствует этому критерию, Си -- абсолютно нет. В общем, пускай весь мир пишет на Си/Си++, если ему так хочется, ну а я буду на том, что мне удобней и больше нравится :) Впрочем, всё это лирика.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

посмотрел. косяг устранен.

http://www.klen.org/Files/DevTools/kgp-avr_20100709.7z

 

Огромное спасибо, сейчас буду попробовать.

 

>круче маразм может быть наверно только Java на К1878ВЕ1 к счастью это невозможно !

Для нашего булыжника с его asm нет ничего невозможного, я считаю )))

С него начинал..

 

 

UPD:

проверил, компиляется, работает.

boot.h больше не имеет претензий к limits.h

Изменено пользователем alexander iz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в связи с итересом некоторых коллег в контесте засовывания kgp в CrossWorks, выкладываю архив для CrossWorks. проверял на 1.7.15

 

klen.org/Files/DevTools/cw_1.7_gcc_20100707.7z

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в связи с итересом некоторых коллег в контесте засовывания kgp в CrossWorks, выкладываю архив для CrossWorks. проверял на 1.7.15

 

klen.org/Files/DevTools/cw_1.7_gcc_20100707.7z

 

 

Спасибо огромное!

 

Скопировал в папку бин, появились такие вот ошибки. Со сторым GCC к-ый в 1.7.3 шел такого не было.

 

Ошибки вот такие вот:

D:/PRG_MKS/trunk/main.cpp:8: undefined reference to `__cxa_atexit'

D:/PRG_MKS/trunk/main.cpp:204: undefined reference to `__dso_handle'

D:/PRG_MKS/trunk/chiv/chive.cpp:5: undefined reference to `__cxa_atexit'

D:/PRG_MKS/trunk/chiv/chive.cpp:1130: undefined reference to `__dso_handle'

В каких модулях должны эти функции находиться? Что цеплять?

 

 

Заранее благодарен!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо огромное!

 

Скопировал в папку бин, появились такие вот ошибки. Со сторым GCC к-ый в 1.7.3 шел такого не было.

 

Ошибки вот такие вот:

D:/PRG_MKS/trunk/main.cpp:8: undefined reference to `__cxa_atexit'

D:/PRG_MKS/trunk/main.cpp:204: undefined reference to `__dso_handle'

D:/PRG_MKS/trunk/chiv/chive.cpp:5: undefined reference to `__cxa_atexit'

D:/PRG_MKS/trunk/chiv/chive.cpp:1130: undefined reference to `__dso_handle'

В каких модулях должны эти функции находиться? Что цеплять?

 

 

Заранее благодарен!

 

 

попробуйте их объявить в таком виде

void* __dso_handle = NULL ;

void

__cxa_atexit(void (*arg1)(void*), void* arg2, void* arg3)

{

}

 

 

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

 

даже больше- а че у Вас в main в срочках 8, 204 уж не аля printf или чето в этом роде?

 

а в теории должно работать - ведь деструкторы статических объектов никогда не вызываются! соответственно __cxa_atexit никогда не вызовется и никогда небудет использован указатель _dso_handle

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Уже неоднократно публиковалось решение. Добавить к проекту вот этот файлик: sys.rar.

(Нужда в нём, кстати, возникает при использовании чисто виртуальных функций)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Уже неоднократно публиковалось решение. Добавить к проекту вот этот файлик: sys.rar.

(Нужда в нём, кстати, возникает при использовании чисто виртуальных функций)

 

дело тут немного интереснее - кросворкc использует не newlib а какуюто свою прикрутку которую они называют супер-мега-турбо-libc, поэтому им закон (интерфейс ) неписан :)

я это так понимаю. тоесть должно заработать но не факт что ковырять не прийдется как с "прозрачной" newlib

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Удалось мне начерно собрать армовский кросс-компиль (си и ада) версии 4.4.4 под МингВ. И если с сями особых проблем не было (пара ошибок), то с адой пришлось побороться, вплоть до того, что одна фактическая ошибка была в исходниках. Библиотеку обкромсал очень сильно -- иначе не компилировалось, поскольку стандартный мэйкфайл пытался впихнуть сокеты и всякую прочую белиберду, которой в принципе быть не может в компиляторе под голое железо. Пока проверил на своём коде -- транслирует нормально, не падает (в отличие от ранее мной использовавшейся версии 4.0.1). Правда, много падений было во время сборки библиотеки под тумбу, из-за чего часть пакетов порезал нафиг (комплексная арифметика и ещё что-то там такое).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо огромное! Получилось!

 

 

Смешал немного советы и получилось так.

 

Всё заработало!

 

sys.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

свежак под масдай

 

ARM:

http://www.klen.org/Files/DevTools/kgp_arm_eabi_20100725.7z

 

AVR:

http://www.klen.org/Files/DevTools/kgp_avr_20100725.7z

 

MIPS:

http://www.klen.org/Files/DevTools/kgp_mips_elf_20100725.7z

 

MINGW32:

http://www.klen.org/Files/DevTools/kgp_mingw32_20100725.7z

 

чуть пожже положу сборку MINGW64, нада устранить несколько шероховатостей

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Прошу помощи, очень нужен syscalls.c для kgp-mips-elf

информации не достаточно.

вам что нужно - заглушки или реализации.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

свежак под масдай

AVR:

http://www.klen.org/Files/DevTools/kgp_avr_20100725.7z

 

In file included from defaults.h:17:0,

from main.c:64:

c:\_gcc\bin\../lib/gcc/avr/4.6.0/../../../../avr/include/avr/boot.h:107:20: fatal error: limits.h: No such file or directory

 

Тоесть, ошибка с разбором пути вернулась взад и мешает компилить код с boot.h

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...