vova7890 0 14 января, 2011 Опубликовано 14 января, 2011 (изменено) · Жалоба Собирая констркции конвертации double в float и наоборот гсс попросил много функций для работы с такими операциями. Почти все функции я нашел гугле, но остались 2 функции которых нигде нету, в libgcc.a их нет. Где их взять? __aeabi_dcmplt __aeabi_dcmpeq зы. gcc 4.5.2 самозборный собирал так ./configure --target=arm-eabi --prefix=/usr --enable-interwork --enable-languages="c,c++" --with-float=soft --with-libgcc Изменено 14 января, 2011 пользователем vova7890 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vova7890 0 15 января, 2011 Опубликовано 15 января, 2011 (изменено) · Жалоба нашел какую то старую либгсс, попробовал прилинковать - собралось. Но функция vsprintf(исходник нашел в гугле работоспособность проверена) не смогла побороть float и double. На флоате все зависло а дубль не правильно преобразовало :( 1. Как собрать гсс вместе с libgcc.a? 2. Как можно проверить работоспособность этих либ? Изменено 15 января, 2011 пользователем vova7890 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 18 января, 2011 Опубликовано 18 января, 2011 · Жалоба 1. Как собрать гсс вместе с libgcc.a? 2. Как можно проверить работоспособность этих либ? а как собсно их можно собрать отдельно - я не умею.... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vova7890 0 20 января, 2011 Опубликовано 20 января, 2011 · Жалоба Ага, ну научите меня своим неумением :smile3046: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 27 января, 2011 Опубликовано 27 января, 2011 · Жалоба Ага, ну научите меня своим неумением :smile3046: 1, libgcc это библиотека нативно компилятора - там функции которыми он эмулирует операции с операндами если нет соответствующей аппаратной подлержки (например если на проце нет операции деления то libgcc содержит тело функции которая вызовется если программист напишет в коде деление операндов). эта библиотека ВСЕГДА (если не хакать спеки) линкуется к выходному исмполняймому бинарю. когда собирается gcc нада понимать что собирается gcc+libgc 2, libc - это библиотека к омпиллеру никакого отношения не имеет - это сборник функций требующих страндартом С языка. может и вообще никакому стандарту не отвечать. в ней обычно реализованы такие 'естественные вещи' как print open close . эта библа отражает болше среду в корой сгенеренная прога выполняется. напоминаю - компиллеру наплевать что в ней есть или нет. он за нее не в ответе. 3, отсюда вывод или Вы чето не поняли и неправильно написали выразились или я чето неправильно прачитал или вообще невструе по gcc... ;( те функции про которые вы писали для Cortex-M3 натурально могут находится тольков libgcc потому как нет у него сопроцессора; arm-kgp-eabi-objdump -t /opt/kgp_arm_eabi/lib/gcc/arm-kgp-eabi/4.6.0/thumb/cortex-m3/libgcc.a | grep __aeabi_dcmplt 000000c0 g F .text 00000012 __aeabi_dcmplt 00000000 *UND* 00000000 __aeabi_dcmplt 00000000 *UND* 00000000 __aeabi_dcmplt Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться