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

 
 
> float point libs, где взять?
vova7890
сообщение Jan 14 2011, 21:35
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



Собирая констркции конвертации 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


Сообщение отредактировал vova7890 - Jan 14 2011, 21:36
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 4)
vova7890
сообщение Jan 15 2011, 12:36
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



нашел какую то старую либгсс, попробовал прилинковать - собралось. Но функция vsprintf(исходник нашел в гугле работоспособность проверена) не смогла побороть float и double. На флоате все зависло а дубль не правильно преобразовало sad.gif

1. Как собрать гсс вместе с libgcc.a?
2. Как можно проверить работоспособность этих либ?


Сообщение отредактировал vova7890 - Jan 15 2011, 12:46
Go to the top of the page
 
+Quote Post
klen
сообщение Jan 18 2011, 17:52
Сообщение #3


бессмертным стать можно тремя способами
*****

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



Цитата(vova7890 @ Jan 15 2011, 15:36) *
1. Как собрать гсс вместе с libgcc.a?
2. Как можно проверить работоспособность этих либ?


а как собсно их можно собрать отдельно - я не умею....
Go to the top of the page
 
+Quote Post
vova7890
сообщение Jan 20 2011, 14:36
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 19-11-10
Пользователь №: 61 026



Ага, ну научите меня своим неумением smile3046.gif
Go to the top of the page
 
+Quote Post
klen
сообщение Jan 27 2011, 16:26
Сообщение #5


бессмертным стать можно тремя способами
*****

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



Цитата(vova7890 @ Jan 20 2011, 17:36) *
Ага, ну научите меня своим неумением smile3046.gif


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
Go to the top of the page
 
+Quote Post

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

 


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


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