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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> linux тулчейн для arm926ejs-based платформы
romez777
сообщение Aug 18 2008, 05:39
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 292
Регистрация: 9-11-04
Пользователь №: 1 077



Приветствую,

ищу тулчейн, поддерживающий в качестве таргета arm926ejs (на нем линукс). Посмотрел на gnuarm.org, но там очевидно все только для bare-metal? Тулчейн с codesourcery.com (есть бесплатная lite версия) не поддерживает arm926.

Когда-то уже собирал кросс-тулзы под линуксом и помню, что это сопровождалось изрядным количеством геморроя smile.gif Думаю, что уже есть где-то готовые у употреблению инструменты, просто не попадаются на глаза.

Заранее благодарю!
Go to the top of the page
 
+Quote Post
amw
сообщение Aug 18 2008, 06:01
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Цитата(romez777 @ Aug 18 2008, 08:39) *
Приветствую,

ищу тулчейн, поддерживающий в качестве таргета arm926ejs (на нем линукс). Посмотрел на gnuarm.org, но там очевидно все только для bare-metal? Тулчейн с codesourcery.com (есть бесплатная lite версия) не поддерживает arm926.

Когда-то уже собирал кросс-тулзы под линуксом и помню, что это сопровождалось изрядным количеством геморроя smile.gif Думаю, что уже есть где-то готовые у употреблению инструменты, просто не попадаются на глаза.

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

Гляньте на http://www.emdebian.org/
Правда оно предполагает Debian на хосте. Но ИМХО можно распаковать вручную и попробовать использовать в любом дистре.
Себе собираю сам.
По сборке можно посмотреть здесь http://www.kegel.com/crosstool/.
Вот еще по сборке.
http://freshmeat.net/projects/crosstool-ng/
http://linux.softpedia.com/get/System/Shel...-NG-28833.shtml


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
romez777
сообщение Aug 19 2008, 04:13
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 292
Регистрация: 9-11-04
Пользователь №: 1 077



Приветствую,

Цитата
Гляньте на http://www.emdebian.org/
Правда оно предполагает Debian на хосте. Но ИМХО можно распаковать вручную и попробовать использовать в любом дистре.

У меня как раз Debain. Пока вышел из положения, взяв свежайший тулчейн с codesourcery.com - нужный мне таргет поддерживает.

Цитата
Себе собираю сам.
По сборке можно посмотреть здесь http://www.kegel.com/crosstool/.
Вот еще по сборке.
http://freshmeat.net/projects/crosstool-ng/
http://linux.softpedia.com/get/System/Shel...-NG-28833.shtml


За ссылки спасибо.
Go to the top of the page
 
+Quote Post
Alex03
сообщение Aug 19 2008, 10:47
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 359
Регистрация: 9-12-05
Пользователь №: 12 034



А buildroot?
Go to the top of the page
 
+Quote Post
romez777
сообщение Aug 21 2008, 07:53
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 292
Регистрация: 9-11-04
Пользователь №: 1 077



Приветствую,

Цитата
Себе собираю сам.
По сборке можно посмотреть здесь http://www.kegel.com/crosstool/.
Вот еще по сборке.
http://freshmeat.net/projects/crosstool-ng/
http://linux.softpedia.com/get/System/Shel...-NG-28833.shtml


читаю описание сборки тулчейна, стараюсь освежить в памяти. Не могу понять, что влияет на выбор префикса тулчейна (arm-unknown-linux-gnu, arm-elf-linux и пр.). В скриптах Дэна Кегеля на каждую архитектуру заведен свой .dat файл, в котором описывается будущий TARGET. Так вот как определяется имя для этого таргета?

Спасибо.
Go to the top of the page
 
+Quote Post
amw
сообщение Aug 21 2008, 11:15
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Цитата(romez777 @ Aug 21 2008, 10:53) *
Приветствую,
читаю описание сборки тулчейна, стараюсь освежить в памяти. Не могу понять, что влияет на выбор префикса тулчейна (arm-unknown-linux-gnu, arm-elf-linux и пр.). В скриптах Дэна Кегеля на каждую архитектуру заведен свой .dat файл, в котором описывается будущий TARGET. Так вот как определяется имя для этого таргета?

Спасибо.

Имя файла компилятора задается в виде триплета cpu-machine-os
Таким образом если Вы хотите собрать компилер, который будет создавать исполняемые (назовем их так для определенности) файлы для процессора ARM то первая часть триплета будет arm. Если данный процессор используется в нескольких различных типах машин, например x86 процессор может использоваться как в IBM PC AT машинах так и в Apple MAC, то вторая часть должна содержать имя той машины, на которую он будет создавать исполняемые файлы. Для x86 на машину IBM PC AT вторая часть триплета будет pc. Для ARM есть несколько видов машин. Например ядра Intel xScale несколько отличаются от "классического" ARM ядра. Для использования их особенностей нужно указать машину xscale. Если Вам не нужна какя либо специфическая машина (а в подавляющем большинстве случаев это так), то указывается unknown. И последняя часть триплета - ОС. Если исполняемые файлы предназначены для ОС Линукс - то третья часть триплета linux, или более новое smile.gif название linux-gnu. Еще для ARM существует два ABI, так наз. old ABI и новый EABI. Если хотите использовать новый - то третья часть будет linux-gnu-eabi. Дальше, если целевая машина представляет собой микроконтроллер в чистом виде - то эта часть триплета будет elf.
Кроме того часто некоторые несущественные в каждом конкретном случае особенности можно не указывать.
По этому триплету компилер составляется из определенных функциональных блоков. Если какая-то часть триплета не указана то будет выбран состав по умолчанию.
Например:
arm-elf - cpu = arm, машина не указана т.е unknown, ОС elf.
arm-linux - cpu = arm, машина не указана т.е unknown, ОС linux (old ABI).
arm-unknown-linux-gnu - то-же что и выше но явно указана машина.
arm-iwmmx-linux - cpu = arm, машина iwmmx (расширенный набор команд от Intel), ОС - linux (old ABI)
arm-xscale-linux-gnu-eabi - cpu = arm, машина xscale (еще один расширенный набор команд от Intel), ОС - linux EABI (новый/расширенный ABI).
Вам для EJS как я понимаю можно выбрать arm-unknown-linux-gnu, и указать опцию configure --with-cpu=arm926ej-s
Полный список можно посмотреть в man gcc.
Эта опция выбирает cpu по умолчанию. Не помню точно, но то-ли эта опция позволяет задать список, или есть другая со списком поддерживаемых архитектур. И еще есть кажется --with-arch. Опции можно найти в файле gcc/configure и в мануале gcc-int (в смысле GCC Internals) но ка всегда мануал отстает.


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
dch
сообщение Aug 21 2008, 16:41
Сообщение #7


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

Группа: Участник
Сообщений: 1 179
Регистрация: 15-09-04
Из: 141070 г. Королев МО, улица Горького 39-121
Пользователь №: 661



http://www.arm.linux.org.uk/developer/
http://www.arm.linux.org.uk/developer/toolchain/
http://ftp.arm.linux.org.uk/pub/armlinux/toolchain/
Go to the top of the page
 
+Quote Post
amw
сообщение Aug 21 2008, 18:20
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Цитата(dch @ Aug 21 2008, 19:41) *

Однако устарело лет 5 назад. Может и ядро не собрать, например.
Код
cross-3.2.tar.gz                23-Aug-2002 10:01


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
romez777
сообщение Aug 22 2008, 08:24
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 292
Регистрация: 9-11-04
Пользователь №: 1 077



Большое спасибо за доходчивое объяснение.

Цитата
arm-elf - cpu = arm, машина не указана т.е unknown, ОС elf.
arm-linux - cpu = arm, машина не указана т.е unknown, ОС linux (old ABI).
arm-unknown-linux-gnu - то-же что и выше но явно указана машина.


Тулчейн от codesourcery имеет такой префикс -- arm-none-linux-gnueabi- . Машина none - что это такое, вроде как принудительно сообщается, что специфичная ARM-машина отсутствует ?

Цитата
Вам для EJS как я понимаю можно выбрать arm-unknown-linux-gnu, и указать опцию configure --with-cpu=arm926ej-s
Полный список можно посмотреть в man gcc.
Эта опция выбирает cpu по умолчанию. Не помню точно, но то-ли эта опция позволяет задать список, или есть другая со списком поддерживаемых архитектур. И еще есть кажется --with-arch. Опции можно найти в файле gcc/configure и в мануале gcc-int (в смысле GCC Internals) но ка всегда мануал отстает.


На сайте Кегеля есть таблица версий инструментария, ядра и результатов сборки. Но версии там достаточно старые -- есть ли где-то информация поновее?

Спасибо.
Go to the top of the page
 
+Quote Post
amw
сообщение Aug 22 2008, 09:21
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Цитата(romez777 @ Aug 22 2008, 11:24) *
Большое спасибо за доходчивое объяснение.
Тулчейн от codesourcery имеет такой префикс -- arm-none-linux-gnueabi- . Машина none - что это такое, вроде как принудительно сообщается, что специфичная ARM-машина отсутствует ?

Честно говоря none пока не встречал. Ну наверное да.
Цитата
На сайте Кегеля есть таблица версий инструментария, ядра и результатов сборки. Но версии там достаточно старые -- есть ли где-то информация поновее?

Спасибо.

Посмотрите на crosstool-ng.

Написал в личку.


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
romez777
сообщение Sep 12 2008, 07:00
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 292
Регистрация: 9-11-04
Пользователь №: 1 077



Всем привет.

Наткнулся на ELDK (embedded linux development kit), ранее никто про него не упоминал. Многие ли использовали/используют данный кит, насколько это оправданно/резоннно?

Насколько я понимаю, он больше заточен под PowerPC , по крайней мере на http://www.denx.de/wiki/DULG/ELDK упор именно на эту архитектуру, хотя есть тулчейны и для ARM и MIPS.

Спасибо.
Go to the top of the page
 
+Quote Post
dch
сообщение Sep 12 2008, 11:49
Сообщение #12


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

Группа: Участник
Сообщений: 1 179
Регистрация: 15-09-04
Из: 141070 г. Королев МО, улица Горького 39-121
Пользователь №: 661



Цитата(romez777 @ Aug 22 2008, 12:24) *
Кегеля

а что это за сайт
Go to the top of the page
 
+Quote Post
amw
сообщение Sep 15 2008, 09:49
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Цитата(dch @ Sep 12 2008, 14:49) *
а что это за сайт

http://kegel.com/
http://kegel.com/crosstool/


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post
romez777
сообщение Sep 17 2008, 13:00
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 292
Регистрация: 9-11-04
Пользователь №: 1 077



Цитата(romez777 @ Sep 12 2008, 10:00) *
Наткнулся на ELDK (embedded linux development kit), ранее никто про него не упоминал. Многие ли использовали/используют данный кит, насколько это оправданно/резоннно?


отвечу сам себе smile.gif Может быть кому будет полезно.
Выяснил, что ELDK достаточно приличный кит, можно развернуть под рядом платформ - Линукс в разных ипостасях, FreeBSD и Solaris. Да, он PowerPC-ориентированный, но только лишь в том смысле, что новые версии выходят сначала под PPC, а потом с задержкой в месяц - ARM версия, а еще значительно позже - MIPS. Кроме того, весьма зрелый и отлаженный инструмент smile.gif
Go to the top of the page
 
+Quote Post
Stanislav Sedov
сообщение Oct 13 2008, 12:53
Сообщение #15


Участник
*

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



Цитата(romez777 @ Sep 17 2008, 17:00) *
отвечу сам себе smile.gif Может быть кому будет полезно.
Выяснил, что ELDK достаточно приличный кит, можно развернуть под рядом платформ - Линукс в разных ипостасях, FreeBSD и Solaris. Да, он PowerPC-ориентированный, но только лишь в том смысле, что новые версии выходят сначала под PPC, а потом с задержкой в месяц - ARM версия, а еще значительно позже - MIPS. Кроме того, весьма зрелый и отлаженный инструмент smile.gif


На FreeBSD, в принципе, есть набор средств разработки в портах: devel/cross-gcc, devel/cross-binutils, devel/cross-gdb. С помощью них можно заниматься разработкой под подавляющее число современных платформ.


--------------------
ST4096-RIPE
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 3rd August 2025 - 03:16
Рейтинг@Mail.ru


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