Каталог статей
Приветствую Вас, Гость · RSS Вторник, 21.05.2024, 00:22







Главная » Статьи » Мои статьи

Создание рабочей среды (toolchain)
Среда разработки под определённую платформу представляет собой набор инструментов для кросс-компиляции. Под кросс-компиляцией понимается генерация исполняемого кода для платформы, отличной от той, на которой исполняется сам кросс-компилятор. Такой инструмент бывает полезен, когда нужно получить код для платформы, экземпляров которой нет в наличии, или в случаях когда компиляция на целевой платформе невозможна или нецелесообразна (например, это касается мобильных систем или микроконтроллеров с небольшим объёмом памяти). В состав инструментов обычно входят: gcc, binutils и glibc или uClibc.

В книге Cross-Compiled Linux From Scratch описаны два метода построения сред разработки для ARM - CLFS Sysroot и CLFS Embedded. В данных источниках по шагам описаны этапы создания необходимых инструментов. Используя данный материал можно вручную создать необходимый набор компонентов. Однако, как утверждают авторы проекта, в основном его целью является ознакомление с принципами сборки системы. Поэтому, нет необходимости собирать всё руками -- процесс давно автоматизирован. Существуют несколько проектов автоматизированной сборки инструментария для кросс-компиляции: buildroot, crosstool, scratchbox, crosstool-NG и др.

Для сборки будет использован crosstool-NG как простой и эффективный способ получить именно то, что требуется и ничего более. Для начала нужно получить текущую актуальную версию пакета:

svn co http://ymorin.is-a-geek.org/svn/crosstool-ng/trunk


Затем, собрать как обычно, выполнив ./configure --prefix=/usr/local && make && make install. После установки, создать каталог проекта - например, arm-linux. В данном каталоге выполнить (предварительно очистив переменную окружения LD_LIBRARY_PATH):

ct-ng menuconfig
ct-ng build


Здесь, первая команда вызывает интерактивный настройщик (по типу как в ядре). Задав необходимые опции и сохранив параметры, выполняется команда сборки. Весь процесс занимает минут 15, естественно в зависимости от мощности системы. На выходе получаем готовый набор инструментов кросс-компиляции (например, arm-unknown-linux-uclibc).

Мою конфигурацию crosstool-NG с использованием gcc-4.2.1 binutils-2.18 и uClibc-0.9.29 можно скачать в каталоге файлов (там же есть конфигурация uClibc).

Удачи!

Ссылки по теме:
1. Cross-Compiled Linux From Scratch
2. Crosstool-NG

Категория: Мои статьи | Добавил: Илья (21.11.2007)
Просмотров: 4433 | Комментарии: 23 | Рейтинг: 0.0/0 |
Всего комментариев: 4
4 teemaffog  
0
А какой это движок? тоже хочу блог завести

3 heiveser  
0
По десятибальной семь.

2 onshember  
0
Замечательно.

1 Павел  
0
1. уберите первые два поста - ето боты и желательно вообще их IP забанить
2. хотелось бы узнать как "предварительно очистить переменную окружения LD_LIBRARY_PATH" :) сорри за нубский вопрос

Имя *:
Email *:
Код *:
Хостинг от uCoz