OpenEmbedded/настройка для b4

Материал из b4wiki

Перейти к: навигация, поиск

Содержание


Настройка среды

Вся метадата для сборки под B4 живет в git репозитории, который в данный момент размещен на blackhole.ddg. Так что нам остается только сделать клон репозитория, отредактировать 1 файл и вперед.

Создадим директорию oe в нашем домашнем каталоге и вытащим туда клон репозитория:

Для тех, у кого нет авторизация по ключу (read only):

 cd ${HOME}/oe
 git clone git://blackhole.ddg:openembedded

Для тех, у кого авторизация по ключу (read/write):

 cd ${HOME}/oe
 git clone gitosis@blackhole.ddg:openembedded 

После завершения работы git мы получим директорию openembedded внутри ${HOME}/oe.

Далее в зависимости от используемого шелла загружаем source-скрипт с переменными среды:

  для bash/sh:
  source openembedded/contrib/b4/source-me.sh
  для tcsh/csh:
  source openembedded/contrib/b4/source-me.csh

После выполнения этой команды автоматически будут созданы некоторые директории, и содержимое ${HOME}/oe будет выглядить так:

  .
  |-- build
  |-- downloads -> /files/b4/oe/downloads
  `-- openembedded

Симлинк на /files/b4/oe/downloads нужен для того, чтобы все скачивали исходники в одну папку. Иначе каждый кто будет собирать образ будет заного качать все исходники.

source-скрипт сменит нашу текущую директорию на ${HOME}/oe/build

Теперь надо скопировать главный конфиг OE - local.conf:

  cp openembedded/contrib/angstrom/local.conf conf/

(помним что мы уже не в ${HOME}/oe, а в ${HOME}/oe/build)

Далее открываем файл conf/local.conf и правим в нем:

OESTATS_BUILDER - прописываем туда свой никнейм и тд.

добавляем строчку:

MACHINE = "b4" - если мы конечно будем собирать под B4.

На этом конфигурация закончена.

Сборка

Конфиги поправлены, source-файлы загружены и мы находимся в директории build - можно начинать собирать:


 bitbake b4-image

Немножко костылей и веревочек

Бывает что BitBake не может скачать какой-нибудь архив с исходными кодами. Можно ему в этом помочь

Сейчас в дебиановских репозитариях нет fakeroot версии 1.9.6, а OpenEmbedded ничего не знает про более новые. Чтобы это обойти необходимо скачать где-нибудь fakeroot_1.9.6.tar.gz и натравить на него md5sum. Скачать можно тут. Копируем скаченный fakeroot в директорию, куда скачиваются остальные исходники и делаем для нее md5:

 cp fakeroot_1.9.6.tar.gz sources
 md5sum sources/fakeroot_1.9.6.tar.gz | awk '{print $1}' > sources/fakeroot_1.9.6.tar.gz.md5

Из-за неполадок на http://tinylogin.busybox.net тоже самое придется сделать с tinylogin_1.4.tar.bz2

Загружаем b4 с новой FS...
разное