Решил создать тему посвященную этой ситеме сборки - появляется все больше плат с нормальной поддержкой lcd, buildroot уже начинает не хватать а "обычные" дистрибутивы слишком тяжелы для слабых процессоров arm9. Некоторое время назад полностью перешел на ubuntu и еще ниразу не пожалел об этом - все что описываю я делал на ubuntu 10.04. С чего начать
1 Подготавливаем систему как описано тут http://wiki.openembedded.org/index.php/OEandYourDistro
все как для debian но не забываем сделать специфичные для ubuntu шаги иначе получите досадные ошибки при сборке.
2 Подготавливаем openembedded как описано тут http://wiki.openembedded.org/index.php/Getting_started
Все готово для сборки :) Я делал применительно к i.mx233 - добавил новое описание для платы в /stuff/openembedded/conf/machine/imx233.conf с такм содержанием
Мой конфиг /stuff/build/conf/local.conf
Сразу хочу сделать оговорку - windows-пользователи с linux на виртуальной машине скорей всего обломаются и будут до пенсии ждать окончания сборки - нужны нехилые мощности для сборки, opie-image у меня с нуля на двухядерном ноуте собирался 5 часов, на диске нужно сразу подготовить побольше места - у меня 100 Гбайт. Для атмеловских плат там есть готовые конфиги - в том числе и для at91sam9g45
После небольших экспериментов я поступил так
1 Взял у жены второй ноутбук помощней, поставил там такую же убунту, собрал тулчайн
$bitbake meta-toolchain
2 перенес его на свой
3 Настроил distcc-кластер и запустил openembedded на кластере - жить стало намного веселее ;-)
Если кому нужно - опишу потом по шагам. Пока я только все собрал и ничего не испытывал на железе - это в другой раз. Сейчас у меня успешно собрались цели
bitbake meta-toolchain
bitbake opie-image
bitbake meta-toolchain-qte
Общие впечатления - тут все намного стабильнй, удобней и настраиваемей :) чем в буилдруте но для небольших проектов явный оверхед - нужна мощная машина для сборки. Планирую полностью перейти на openembedded.
1. Наиболее подходящее устройство для imx233 - chumby-falconwing, используя его можно не писать свои конфигурации
2. Чтобы уменьшить занимаемое пространство при сборке можно добавить INHERIT += "rm_work"
1 Да - я его потом тоже увидел, посмотрел ничего нового там не увидел :) да и его тоже править нужно, , можно вообще взять конфиг от любого подходящего чипа например at91sam9263 - при сборке корневой фс это выльется только в изменении строки приветствия, ядро я собираю отдельно - постоянно вношу изменения.
2 Нужная опция - спасибо, если есть опыт использования openembedded - что еще можете посоветовать ?
3 Не могу к нему подключиться
Не совсем понятно назначение MACHINE_FEATURES - она по описанию должна сообщать task-base чем располагает наша система, но на практике при сборке opie никак не влияет на конечный результат - имиджи одинаковые и при этом никакой графики на экране я так и не увидел :) в консоли вроде все есть.