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

 
 
> свежак KGP win32/arm/avr/mips/m68k, GNU tools chain
klen
сообщение Jan 19 2008, 21:36
Сообщение #1


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

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



Всем привет.
В ознаменовение нового года и открытия раздела выкладывается свежак.

binutils-2.18.50-20080115
gcc-4.3.0-20080111
avrlibc-20080116
newlib-20080115
gdb-20080117

все зажато в формат 7z
бросаете распакованное в любую папку, прописываете PATH папка/bin далее должно быть все бкз проблем, хидеры и либы должны сами находится и линковатся без дополнительных гимороев.

Win32:
KGP Win32
здесь все, включая нидеры и либы, это то чем я собираю ВСЕ остальноя, включая драйверы для масдая. ~18Mb
работает, мин нет.

MIPS:
KGP MIPS
не тестировалось, нет платы.


m68k/ColdFire:
KGP m68k
собрал первый раз, возможны ошибки для m51qe, собирал ручками. Проверяйте, найдете неправильную кодогенерацию пишите поправлю компилер. Для остальных возможна ошибочная генерация в код FP инструкций(для тех которые не имеют FP), нада пробывать. Evgeny_CD так сказать инициировал интерес к данной сборке, ему и карты в руки.

avr:
KGP 8bit AVR
Тут как обычно, работает тоже без мин, я веду рабочий проект на mega1280, девайсы не жужжат.
Новое - добавлена подархитектура avr35(usb82,usb162), поддерживается avr6 (m256x)

arm:
KGP ARM
тоде самое, веду проект, все скомпиленное работает.

спасиба за внимание.
Go to the top of the page
 
+Quote Post
85 страниц V  « < 6 7 8 9 10 > »   
Start new topic
Ответов (105 - 119)
mikel
сообщение Dec 8 2008, 11:29
Сообщение #106





Группа: Новичок
Сообщений: 4
Регистрация: 23-12-04
Пользователь №: 1 637



Сергей, а KGP-ARM по идее поддерживает VFP в ARM926EJ-S в отличии от CodeSourcery Lite? Я что-то ни одной готовой тулчейн с поддержкой vfp не нашел.
Go to the top of the page
 
+Quote Post
ukpyr
сообщение Dec 12 2008, 09:36
Сообщение #107


Профессионал
*****

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



Цитата
вопрос к klen : на какую папку настроена ваша сборка avr-gcc ?
при запуске avr-gcc выдает сообщение что не находит сс1.
при добавлении пути к сс1 в %PATH% ругается что не находит какой-то библиотечный .o файл. в сборках WinAVR этого не было.

хм, заработало после создания сист.переменных GCC_EXEC_PREFIX (путь к сс1), LIBRARY_PATH (пути к lib, lib/gcc/avr/4..).
gcc вроде должен находить сам, нет ?
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Dec 12 2008, 10:06
Сообщение #108


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(ukpyr @ Dec 12 2008, 11:36) *
хм, заработало после создания сист.переменных GCC_EXEC_PREFIX (путь к сс1), LIBRARY_PATH (пути к lib, lib/gcc/avr/4..).
gcc вроде должен находить сам, нет ?

Это зависит от установщика пакета. Прописывает ли он автоматически все нужные пути и переменные. Не все установщики это делают.
Кроме того пользователь может установить тулчейны для разных платформ. Как быть в таком случае?
Go to the top of the page
 
+Quote Post
ukpyr
сообщение Dec 12 2008, 11:41
Сообщение #109


Профессионал
*****

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



Цитата
Кроме того пользователь может установить тулчейны для разных платформ. Как быть в таком случае?

у меня так и сделано - на флешке тулчейны для AVR,ARM,Win32.
так вот некоторым версиям достаточно добавить путь к папке bin нужного тулчейна в начале скрипта компиляции. В новых это не проходит - ругается что не находит cc1, crt*.o и т.п. Если дополнительно прописать пути к этим файлам в переменные GCC_EXEC_PREFIX, LIBRARY_PATH в скрипте, то компилирует нормально. Непонятно почему gcc не может находить эти пути самостоятельно ?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Dec 12 2008, 11:48
Сообщение #110


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(IgorKossak @ Dec 12 2008, 12:06) *
Кроме того пользователь может установить тулчейны для разных платформ. Как быть в таком случае?
В таком случае все действия делают через вызов <имя_платформы>-gcc.exe, а уже он находит необходимые as, cc1, ld и библиотеки. Ищет как по некоторым абсолютным путям, так и по относительным путям от того места, где лежит сам. По-моему так. Можно запустить его на компиляцию с ключем -v и он расскажет где что искал и где что нашел.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
ukpyr
сообщение Dec 12 2008, 14:05
Сообщение #111


Профессионал
*****

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



Цитата
Ищет как по некоторым абсолютным путям, так и по относительным путям от того места, где лежит сам
так вот вопрос - почему не ищет и не находит ?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Dec 12 2008, 14:18
Сообщение #112


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(ukpyr @ Dec 12 2008, 16:05) *
так вот вопрос - почему не ищет и не находит ?
Так покажите, что пишет -v, подумаем. Попробуйте для WinAVR и сборки klen-а, сравним.
Код
echo int main() {return 0;} > test.c && gcc -v test.c >log.txt 2>&1


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
klen
сообщение Dec 12 2008, 17:35
Сообщение #113


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

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



я давно порпавил код чтоб ничего прописывать не надобыло. вся путевая адресация относительно корневой директории пакетка.
это какой то глюк давайте разбиратся.
покажите что напишет сс1 -v


на выходных пересоберу все - еще раз проверим все. все работало уде давно и долго - я и проверять престал.
Go to the top of the page
 
+Quote Post
ukpyr
сообщение Dec 12 2008, 18:10
Сообщение #114


Профессионал
*****

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



о, собралось.
не знаю что за глюк был.

запуск компилятора :
Цитата
set PATH=%GCC_ROOT%\avr_kgp\bin;%PATH%
avr-gcc -v main.c >1.txt 2>2.txt

pause



вывод :
Цитата
Using built-in specs.
Target: avr-kgp-elf
Configured with: ../../src/gcc-4.4-20081107/configure --prefix=/kgp_avr --target=avr-kgp-elf --disable-nls --enable-languages=c,c++ -v
Thread model: single
gcc version 4.4.0 20081107 (experimental) (GCC)
Klen's GCC package (KGP) for 8-bit AVR/elf platform
see latest build in www.klen.orgCOLLECT_GCC_OPTIONS='-v'
e:/work/tools/prg/lng/c/gcc/avr_kgp/libexec/gcc/avr-kgp-elf/4.4.0/cc1.exe -quiet -v -iprefix e:\work\tools\prg\lng\c\gcc\avr_kgp\bin\../lib/gcc/avr-kgp-elf/4.4.0/ main.c -quiet -dumpbase main.c -auxbase main -version -o c:\windows\Temp/cco66buf.s
ignoring nonexistent directory "e:/work/tools/prg/lng/c/gcc/avr_kgp/avr-kgp-elf/sys-include"
#include "..." search starts here:
#include <...> search starts here:
e:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/avr-kgp-elf/4.4.0/include
e:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/avr-kgp-elf/4.4.0/include-fixed
e:/work/tools/prg/lng/c/gcc/avr_kgp/avr-kgp-elf/include
End of search list.
GNU C (GCC) version 4.4.0 20081107 (experimental) (avr-kgp-elf)
compiled by GNU C version 4.3.2, GMP version 4.2.4, MPFR version 2.3.2.
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: ecd85a928d73c60df54246d38c43bb7a
COLLECT_GCC_OPTIONS='-v'
e:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/avr-kgp-elf/4.4.0/../../../../avr-kgp-elf/bin/as.exe -o c:\windows\Temp/ccgV11Cj.o c:\windows\Temp/cco66buf.s
COMPILER_PATH=e:/work/tools/prg/lng/c/gcc/avr_kgp/libexec/gcc/avr-kgp-elf/4.4.0/;e:/work/tools/prg/lng/c/gcc/avr_kgp/libexec/gcc/;e:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/avr-kgp-elf/4.4.0/../../../../avr-kgp-elf/bin/
LIBRARY_PATH=e:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/avr-kgp-elf/4.4.0/;e:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/;e:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/avr-kgp-elf/4.4.0/../../../../avr-kgp-elf/lib/
COLLECT_GCC_OPTIONS='-v'
e:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/avr-kgp-elf/4.4.0/../../../../avr-kgp-elf/bin/ld.exe -m avr2 e:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/avr-kgp-elf/4.4.0/../../../../avr-kgp-elf/lib/crts8515.o -Le:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/avr-kgp-elf/4.4.0 -Le:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc -Le:/work/tools/prg/lng/c/gcc/avr_kgp/lib/gcc/avr-kgp-elf/4.4.0/../../../../avr-kgp-elf/lib c:\windows\Temp/ccgV11Cj.o -lgcc -lc -lgcc


проверю на других таргетах.
Go to the top of the page
 
+Quote Post
klen
сообщение Dec 13 2008, 08:43
Сообщение #115


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

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



Цитата(mikel @ Dec 8 2008, 14:29) *
Сергей, а KGP-ARM по идее поддерживает VFP в ARM926EJ-S в отличии от CodeSourcery Lite? Я что-то ни одной готовой тулчейн с поддержкой vfp не нашел.

вопрос не понял.
Go to the top of the page
 
+Quote Post
KanKan
сообщение Dec 14 2008, 16:11
Сообщение #116


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 10-04-08
Пользователь №: 36 633



Цитата(klen @ Dec 13 2008, 11:43) *
вопрос не понял.


Ну вообще меня интересовало будет ли gcc генерить hardware VFP/FPU код для LPC3180 при использовании -mfpu=vfp. Как я понял, в LPC3180 есть "стандартный" армовский сопроцессор VFP9-S (VFPv2).

Я вроде-бы где-то читал что халявная Codesourcery Lite не генерит hardware vfp код. Мол только платные версии это могут.
Хотя теперь уже сомневаюсь... Может имелись ввиду старые версии codesourcery с GCC до 4.0 которые не поддерживали VFP вообще. А может писали про то что библиотеки в Lite версиях собраны без поддержки VFP а а новые Pro версии включают newlib которая"optimized for vfp".
Меня интересует возможность использования сопроцессора в своем (не библиотечном) C-коде.

Извиняюсь за непонятность вопроса smile.gif Для меня это все несколько в новинку - что ARM что GNU toolchain.

PS: задавая вопрос случайно зашел под старым (забытым) ником mikel.
Go to the top of the page
 
+Quote Post
klen
сообщение Dec 15 2008, 09:44
Сообщение #117


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

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



2_KanKan

код test.c
Код
double D(double a , double b)
{
  return (a - b) + 0.5*(a-b)*(a-b) + 0.25*(a-b)*(a-b)*(a-b);
}


$ arm-kgp-elf-gcc -S test.c -mfloat-abi=softfp -mfpu=vfp

Код
    .file    "test.c"
    .text
    .align    2
    .global    D
    .type    D, %function
D:
    @ args = 0, pretend = 0, frame = 0
    @ frame_needed = 0, uses_anonymous_args = 0
    @ link register save eliminated.
    fmdrr    d4, r0, r1
    fmdrr    d5, r2, r3
    fsubd    d7, d4, d5
    fldd    d6, .L3
    fldd    d5, .L3+8
    fmuld    d6, d7, d6
    fmuld    d5, d7, d5
    fcpyd    d4, d7
    fmuld    d5, d7, d5
    fmacd    d4, d7, d6
    fmacd    d4, d7, d5
    fmrrd    r0, r1, d4
    bx    lr
.L4:
    .align    2
.L3:
    .word    0
    .word    1071644672
    .word    0
    .word    1070596096
    .size    D, .-D
    .comm    z,8,4
    .ident    "GCC: (GNU) 4.4.0 20081003 (experimental)"


оно? все инструкции начинающиеся с "f" относятся ксопроцессору VFP
Go to the top of the page
 
+Quote Post
KanKan
сообщение Dec 15 2008, 11:08
Сообщение #118


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 10-04-08
Пользователь №: 36 633



Цитата(klen @ Dec 15 2008, 12:44) *
2_KanKan

.......

оно? все инструкции начинающиеся с "f" относятся ксопроцессору VFP


Ну да, вроде оно!
Народ на других форумах правда упоминает некотрые странности/баги gcc-шного кода для VFP, но это уже баги gcc а не конкретной сборки, да и к томуже старых версий.
Спасибо. Я сам пока разбираюсь с армами на примере ARM7 и Cortex-M3, до 9-го и сопроцессора еще не добрался, но уже давно лежит плата на lpc3180 которую надо запустить с поддержкой vfp для одного хобби-проекта.
Go to the top of the page
 
+Quote Post
ukpyr
сообщение Dec 17 2008, 12:32
Сообщение #119


Профессионал
*****

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



ошибка в файле avr/wdt.h:133:5: error: operator '||' has no left operand :
Код
#if || defined(__AVR_ATxmega64A1__) \
|| defined(__AVR_ATxmega64A3__) \
|| defined(__AVR_ATxmega128A1__) \
|| defined(__AVR_ATxmega128A3__) \
|| defined(__AVR_ATxmega256A3__) \
|| defined(__AVR_ATxmega256A3B__)
Go to the top of the page
 
+Quote Post
ukpyr
сообщение Dec 17 2008, 12:32
Сообщение #120


Профессионал
*****

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



?

Сообщение отредактировал ukpyr - Dec 17 2008, 12:33
Go to the top of the page
 
+Quote Post

85 страниц V  « < 6 7 8 9 10 > » 
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 12th August 2025 - 04:57
Рейтинг@Mail.ru


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