Harbour:
Цитата
Во-первых - нафига собирать старый 4.1.2 ?
Я взял его с сайта gnuarm, подумав, что он наиболее подходящ, коль они его используют для раздачи страждущим. При прежних параметрах для
configure и заменённым
t-arm-elf у
gcc-4.2.3 ошибка прежняя:
Код
../.././gcc/crtstuff.c:1: sorry, unimplemented: -mfloat-abi=hard and VFP
Цитата
Во-вторых там же на gnuarm английским по белому все написано. Берем тупо последний 4.2.3 и по шажочкам :
1. <...>
2. <...>
3. <...>
Сделано. К четвёртому пункту есть вопрос.
Цитата
4. cd gcc-build
../gcc-4.3.2/configure --target=arm-elf --prefix=/usr --enable-interwork
--enable-multilib --with-float=soft --enable-languages="c,c++"
--with-newlib --with-headers=newlib-source/newlib/libc/include
make all-gcc install-gcc
Согласно
User Manual LPC32x0 имеет векторный сопроцессор для работы с ПЗ (VFP), который мне хотелось бы использовать в генерируемом тулчейном коде. Если
configure указать
--with-float=soft, то, как я понимаю, gcc будет эмулировать ПЗ? Мне хотелось бы иметь полностью аппаратную точку.
amw:
Цитата
Опции то есть, а вот есть ли FPU в железе?
Да, есть. Выше есть ссылка на описание серии µC.
Цитата
Вероятно Вам потребуется libfloat для Вашего конкретного процессора. Обычно они предоставляются производителем. По крайней мере с Интеловским IXP425 у меня именно так и было.
А разве libfloat используется не для программной эмуляции FPU для конкретной архитектуры или ядра? Мне хотелось бы иметь именно аппаратную точку.
Цитата
Вроятно да. Не знаю точно, что там именно раскоментировано, но GCC не знает, в Вашем случае, какой FPU использовать для hard-float. Вот в настройках MULTILIB они и задаются.
Спасибо, попробую собрать с ним.
gosha:
Цитата
--with-float=softfp --with-fpu=vfp
Собирается?
Возможно, но согласно с
мануалом к gcc:
Цитата
-mfp=number
This specifies what floating point hardware (or hardware emulation) is available on the target. Permissible names are: `fpa', `fpe2', `fpe3', `maverick', `vfp'. -mfp and -mfpe are synonyms for -mfpu=`fpe'number, for compatibility with older versions of GCC.
If -msoft-float is specified this specifies the format of floating point values.
при
--with-float=softpfp и
--with-fpu=vfp точка останется эмулируемой, но при этом будет хранится в формате VFP. Мне бы хотелось иметь аппаратную точку.
Благодарю за ответы.
Сообщение отредактировал dragigrja - Jan 15 2009, 10:55