Самостоятельная сборка самого свежего имиджа Е2 для AzBoxHD из репозитория.

allllex

Модератор
Команда форума
Самостоятельная сборка самого свежего имиджа Е2 для AzBoxHD из репозитория.

В этом топике я описал, как любителям попробовать собрать свой свежий имидж енигмы2 для AzBox, начиная с установки гостевой линукс машины UBUNTU, и заканчивая файлом установки имиджа в формате patch.e2.
Для тех, кто чуть-чуть знаком с линуксом.

I. Установка на Windows линукс-машины, как гостевой системы.

Сначала установим на Windows гостевую линукс – машину. Для этого воспользуемся программой Oracle VM VirtualBox. Эта программа создает линукс машину в оконном режиме, что для новичков, мало знакомых с линуксом, очень удобно. Можно одновременно работать в Винде и в оконном режиме как с программой, в линуксе.

1. Заходим по этой ссылке на сайт Oracle VM VirtualBox
http://www.virtualbox.org/wiki/Downloads
и скачиваем программу, подходящую именно под вашу ось.
У меня 32 битная Windows XP и я буду описывать действия с ней.
На сегодня последняя версия - VirtualBox-4.0.4-70112-Win.exe.
Если у вас по умолчанию выставлена русская локаль в Винде, то установка этой программы пройдет на английском языке, а запустится программа сразу на русском. Программа бесплатная.

2. Я буду устанавливать UBUNTU, поэтому скачиваем образ последней ее версии с сайта:
http://www.ubuntu.com/desktop/get-ubuntu/download
На сегодня это версия Ubuntu 10.10. Эта версия линукса бесплатная.

3. Из скачанного .iso файла прожигаем на болванку этот образ, чтобы иметь загрузочный диск.

4. Устанавливаем VirtualBox-4.0.4-70112. Проблем не возникнет. Даю ссылку на очень хорошую инструкцию по ее и Ubuntu установке:
http://ubuntologia.ru/virtualbox-ubuntu-in-windows#install-virtual-box

Несколько замечаний при настройке гостевой Ubuntu перед ее первым запуском:

- вот в этом окне




установите порядок загрузки 1-CD/DVD, 2-жесткий диск, иначе при первом запуске Ubuntu она не установится с CD ROM и выскочит ошибка, что не найден загрузочный диск.

- Вот в этом окне



правильно отконфигурируйте свой CD ROM. Посмотрите, на каком шлейфе он реально сидит в компьютере, и выберите или SATA или IDE контроллер.
И обязательно справа от названия привода нажмите на маленькую иконку диска




и выберите реальную букву, на которой сидит ваш CD диск.

- Правильно выставьте количество ядер, если у вас многоядерный процессор.
Количество ядер выставляется в программе VM VirtualBox в Свойствах Ubuntu в закладке Система.



По умолчанию в компиляторе заложен двухядерный процессор. Вы можете конечно выставить здесь свой реальный, допустим 6 ядерный процессор, но тогда после пункта 4 в разделе Непосредственная сборка имиджа (дальше по тексту) Вам надо пройти по пути
cd /home/al/rticoree2, открыть в редакторе файл Makefile, найти строчку

Код:
# set this to the number of CPU cores to use for parallel build
  NUM_THREADS ?= 2
и вместо 2 прописать ваше реальное количество ядер на компьютере.

5. После этого обязательно вставьте созданный загрузочный диск с Ubuntu в CD ROM.
Нам главное загрузить Ubuntu как гостевую систему, остальные настройки подгоните потом.

После всех манипуляций окно программы будет выглядеть вот так:



6. Вот теперь можно нажимать на зеленую стрелку Старт. При первом старте должна начаться установка Ubuntu в программу VirtualBox
Если выскочит ошибка, значит, программа не видит ваш CD ROM.
Попробуйте в Свойствах переподключить его к другому виртуальному шлейфу, или поменяйте контроллер с SATA на IDE, хотя реально он подключен по SATA. Как на скрине выше.
Как устанавливать Ubuntu, описано здесь. Она будет устанавливаться в окне программы VirtualBox.
http://ubuntologia.ru/installation
Разницы никакой. Только при разбиении дисков ни в коем случае ничего не меняйте. Все по умолчанию, вы программой VirtualBox на фазе подготовки уже все отконфигурировали и выделили участок жесткого диска под линукс.

7. После установки, Ubuntu в окне VirtualBox выглядит так:



А на мониторе компьютера примерно вот так:



Можно работать и в линуксе и в винде, только меняя фокус курсором мышки.
Подготовительная часть закончена. Теперь будем создавать свой свежий имидж для AzBox из репозитория.

Продолжение следует.
 

allllex

Модератор
Команда форума
II. Создание свежего имиджа для AzBox из репозитория.

Подготовка.

1. Я подразумеваю, что вы прочитали эту статью
http://ubuntologia.ru/start-learning
полностью и имеете понятие о некоторых терминах, которые будем использовать и некоторых программах в линуксе.

Считаем, что все, что там написано, нам ясно и вопросов не задаем, что такое суперпользователь
и как удалить файл или директорию с «замком». Эти понятия нам потребуются.

2. Кроме этого для компиляции надо еще доустановить пакеты в Ubuntu. Какие?
Я установил вот эти:

cvs
autoconf
flex
libtool
bison
statsvn
texinfo
help2man

Можно почитать здесь::
http://dream.altmaster.net/showpost.php?p=41981&postcount=1

3. Сначала нам надо установить этот «git» на своей машине, чтобы попасть в репозиторий. По умолчанию он не установлен.

(Репозиторий, это «склад», где находится все, что нужно для создания самого свежего имиджа, и не только.)

4. На линуксе идем по пути Администрирование – Менеджер пакетов Synapsis.
Запускаем. Попросит пароль, вводим свой пароль. Не отображаются ни точки при вводе, ни что другое. Курсор не двигается.
Просто вводите пароль, и жмите Enter.

5. Открывается программа. Идем Правка – Найти и в окне поиска пишем git-core и жмем, Найти.

6. В окне появляется требуемый пакет. Правой кнопкой выделяем, Отметить для установки, появляется стрелочка перед названием.
Жмем, Применить.
Или щелкните два раза на названии пакета, и он начнет устанавливаться.



Таким же образом ищем и устанавливаем другие, указанные выше пакеты.

Продолжение следует.
 

allllex

Модератор
Команда форума
Непосредственная сборка имиджа.

1.Вся компиляция будет проходить в терминале.
Идем по пути Приложения – Стандартные - Терминал и запускаем его.

2. Создаем клон репозитория на Ubuntu:
git clone git://rticoree2.git.sourceforge.net/gitroot/rticoree2/rticoree2

3. Идет лог:
Код:
al@al:~$ git clone git://rticoree2.git.sourceforge.net/gitroot/rticoree2/rticoree2
Initialized empty Git repository in /home/al/rticoree2/.git/
remote: Counting objects: 12, done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 12 (delta 3), reused 0 (delta 0)
Receiving objects: 100% (12/12), done.
Resolving deltas: 100% (3/3), done.
al@al:~$
4. Создается пока пустой репозиторий по пути /home/ваш_логин/rticoree2/ с единственным не скрытым файлом Makefile.
Makefile - это инструкция, в которой записано, как надо компилировать имидж. От ее качества зависит,
пройдет ли компиляция без ошибок, или нет.

5. Переходим в директорию, где лежит этот файл инструкции командой
cd /home/ваш_логин/rticoree2

6. Даем команду на создание имиджа:
make -f Makefile image
Создаются директории и в них закчиваются файлы. Этот процесс довольно длительный.
Не все шло гладко. Ошибки были в основном в том, что при компиляции было невозможно скачать какой либо пакет,
по запрограммированному компилятором пути. В этом месте компиляция останавливалась.
Тогда я скачивал этот пакет из другого места вручную и вкладывал архив в каталог /home/ваш_логин/rticoree2/sources
и перезапускал компиляцию командой make -f Makefile image.
В общей сложности у меня первая компиляция с исправлением ошибок заняла целый день. Все время тормозил сайт
_http://mirrors.openembedded.org. Вроде как связь есть, а пакеты не отдает...

В каком месте компиляции вы находитесь в данный момент, вы можете определить по строчке лога в данный момент, например

Код:
NOTE: Running task 1112 of 2109 (ID: 1023,………..
Выполняется задача 1112 из общего количества задач 2109. Но по времени это ничего не значит.
Одна задача может выполняться пару секунд, другая несколько минут.

7. Если в конце в терминале вы получите вот такое окончание лога:
Код:
make: *** [image] Ошибка 1
значит, компиляции не получилось. Обычно выше этой строчки говорится об ошибке или ошибках.
Исправляйте, и запускайте компиляцию снова.

8. Если наконец в самом конце вы получаете вот эту запись:
Код:
NOTE: Tasks Summary: Attempted 2109 tasks of which 2052 didn't need to be rerun and 0 failed.
al@al:~/rticoree2$
Значит у вас компиляция закончилась удачно.



Нас интересует пакет patch.e2

Идем по пути:
/home/ваш_логин/rticoree2/azboxhd/build/tmp/deploy/images
И находим его там:



Копируем его в расшаренную еще при установке гостевой системы общую директорию и устанавливаем имидж в бокс в общем порядке.

Как создавать имиджи из репозитория, описано здесь:
http://sourceforge.net/apps/mediawiki/rticoree2/index.php?title=Main_Page

Этот имидж нормально установился на бокс и запустился, но только не с последней AZup,
а с откатом через версию 1.1.4 и последующей установкой через AZUp 2.0.2

Вот что говорит про ядро:

Linux azboxhd 2.6.29.4-13-the-ripper #41 PREEMPT Mon Apr 18 14:27:50 CEST 201
1 mips GNU/Linux


Самые последние драйверы загрузил отсюда.

http://sourceforge.net/projects/rticoree2/files/

Приятного конструирования.
allllex
23.04.2011 года.

Исправлено 28.04.2011.
Исправлено 24.05.2011.
Исправлено 10.07.2011.
 
Последнее редактирование:

Vitaliy_S

Профи в Сат-ТВ
Перевод ошибки: Средство проверки правильности конфигурации Openembedded обнаружило потенциально неверную конфигурацию.
Или исправьте причину этой погрешности, или на ваш собственный риск отключите средство проверки (см. sanity.conf).
Дальше - список потенциальных проблем / советы:
Не используйте Bitbake как root.
Не нужно ничего отключать, просто запускайте make -f Makefile image, без sudo
 

allllex

Модератор
Команда форума
Все стер на линуксе и сегодня начал компиляцию по новой. Попробовал по твоему совету, без sudo. У меня не пошло.
Вот лог:
al@al:~$ cd /home/al/rticoree2
al@al:~/rticoree2$ make -f Makefile image
cd bb && git pull origin 1.8-dream
error: cannot open .git/FETCH_HEAD: Permission denied

make: *** [bb-update] Ошибка 1


А когда ввожу с sudo, то компиляция продолжается... но до ошибки, про которую я говорил в 1 посту:
al@al:~/rticoree2$ sudo make -f Makefile image
[sudo] password for al:
cd bb && git pull origin 1.8-dream
From git://git.opendreambox.org/git/bitbake
* branch 1.8-dream -> FETCH_HEAD
Already up-to-date.
cd /home/al/rticoree2/openembedded && git pull origin master
From git://rticoree2.git.sourceforge.net/gitroot/rticoree2/oerticoree2
* branch master -> FETCH_HEAD
Already up-to-date.
cd /home/al/rticoree2/azboxhd/build; . ./env.source; bitbake -k dreambox-image
ERROR: Openembedded's config sanity checker detected a potential misconfiguration.
Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
Following is the list of potential problems / advisories:

Do not use Bitbake as root.
make: *** [image] Ошибка 1
al@al:~/rticoree2$
 

Vitaliy_S

Профи в Сат-ТВ
alllex, вот мой лог:
Код:
vitaliy@vitaliy-desktop:/media/OE$ cd rticoree2/
vitaliy@vitaliy-desktop:/media/OE/rticoree2$ make -f Makefile image
cd bb && git pull origin 1.8-dream
From git://git.opendreambox.org/git/bitbake
 * branch            1.8-dream  -> FETCH_HEAD
Already up-to-date.
cd /media/OE/rticoree2/openembedded && git pull origin master
From git://rticoree2.git.sourceforge.net/gitroot/rticoree2/oerticoree2
 * branch            master     -> FETCH_HEAD
Already up-to-date.
cd /media/OE/rticoree2/azboxhd/build; . ./env.source; bitbake -k dreambox-image
NOTE: Handling BitBake files: \ (8200/8200) [100 %]
NOTE: Parsing finished. 7559 cached, 315 parsed, 326 skipped, 2 masked.
NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
NOTE: Executing runqueue
NOTE: Running task 2106 of 2109 (ID: 15, /media/OE/rticoree2/openembedded/recipes/images/dreambox-image.bb, do_package_update_index_ipk)
NOTE: Running task 2108 of 2109 (ID: 9, /media/OE/rticoree2/openembedded/recipes/images/dreambox-image.bb, do_rootfs)
NOTE: Running task 2109 of 2109 (ID: 0, /media/OE/rticoree2/openembedded/recipes/images/dreambox-image.bb, do_build)
NOTE: Tasks Summary: Attempted 2109 tasks of which 2106 didn't need to be rerun and 0 failed.
vitaliy@vitaliy-desktop:/media/OE/rticoree2$

P.S. Правда я не под Ubuntu компилю, а под JULinux.
 
Последнее редактирование:

allllex

Модератор
Команда форума
У нас директории для сборки разные, у тебя
/media/OE/rticoree2/
а у меня по умолчанию сама создалась директория
/home/al/rticoree2/
может поэтому разные права нужны. Но по идее я работаю в своей домашней директории al, где я хозяин.
А при компиляции получаю извещение, что у меня не хватает прав.
 

Vitaliy_S

Профи в Сат-ТВ
а у меня по умолчанию сама создалась директория
/home/al/rticoree2/
может поэтому разные права нужны. Но по идее я работаю в своей домашней директории al, где я хозяин.
Возможно с правами получилась путаница, потому что ты репозиторий тоже клонировал через sudo, я sudo не использовал вообще, использовал, только когда пакеты необходимые ставил.
 
Последнее редактирование:

allllex

Модератор
Команда форума
Возможно с правами получилась путаница, потому что ты репозиторий тоже клонировал через sudo, я sudo не использовал вообще, использовал, только когда пакеты необходимые ставил.
Ты оказался прав. Если не давать ни разу команду суперпользователя, то тогда компиляция нормально проходит, и не глючит.
Исправил в первом посте. (удалил из команды sudo)
 

allllex

Модератор
Команда форума
Сегодня попробовал скрутиь очередной имидж.
Так как винда была переустановлена с 0, пришлось все делать по новой.

Появились некоторые нюансы.
Во первых надо заменить при компиляции ch на bash. Пишем в терминале:

sudo apt-get install gawk diffstat help2man texi2html texinfo build-essential subversion cvs unzip texinfo git-core

sudo ln -sf /bin/bash /bin/sh

Во вторых надо доустановить пакет python-psyco

sudo apt-get install python-psyco

И в третьих, после начала компиляции, когда она остановится, но git уже загружен на компьютер выскакивает ошибка невозможности компиляции wireless-tools и wpa-supplicant.
Идем по пути ...openembedded/conf/machine/include/azboxhd.inc и в этом файле изменяем строчку
MACHINE_FEATURES += "alsa pci"
на строчку
MACHINE_FEATURES += "wifi alsa pci"

После этого компиляция проходит успешно.

Очень плохо работает сервер http://mirrors.openembedded.org/
Можно сказать никак не работает. Трассировка до него не доходит.

Первая компиляция из-за этого останавливается на часы... Если по логу видно, какой файл требуется, то без проблем находишь его поиском в другом месте, скачиваешь и кладешь в папку sources

Кроме этого надо посчитать его md5 сумму вот этой программой
http://www.elgorithms.com/downloads/chaosmd5.php

И создать текстовый файл точно с таким названием (вместе с расширениями) как тот, который скачали и редактором прописать во внутрь эту md5 сумму. К окончанию названия созданного файла через точку надо приписать еще расширение .md5, например autofs-4.1.4.tar.bz2.md5.

А что делать, если для компиляции ищется файл, вот например по логу, такой:
git_rticoree2.git.sourceforge.net.gitroot.rticoree2.gstrticoree2_fcd5336993165774abb91f34d1eb847265e5101c.tar.gz

Такой вы поиском не найдете и фиг скачаете. Выход один, ждать часами пока не зацепится. Я ждал два дня.

Еще может выскочить ошибка с неясным смыслом о нарушенни суммы.
Тогда идите в папку sources и смотрите, какой файл оказался без двойника .md5. В этой папке все файлы, без исключения, имеют файлы-двойникки с контрольной суммой md5.
Надо для него посчитать сумму и создать текстовый файл-двойник с окончанием названия...md5

А когда скомпилируете и установите имидж, то недостающие плагины и аддоны скачивайте отсюда:

http://www.pb-download.com/ou/E2/azboxhd

У меня имидж загружается как
ID Enigma : Core_1.3
Version : 1.3.0
Kernel : 2.6.22
 
Последнее редактирование:

bbsc

Профи в Сат-ТВ
Отличная работа, спасибо.
Скажите, а как можно поменять опции сборки ядра?
Хотелось бы включить отключенные cp866 и 1251 и еще кое-чего по-мелочи..
 

allllex

Модератор
Команда форума
После перехода на ядро от Opensat на основном форуме RTI сказали, что git не закрывается, но больше не обновляется.
The kernel is public, but GIT not is updated.
Может это и к лучшему, он фактически уже давно умер.

Но не все потеряно. Начал развиваться свой git от группы SPAZE.
У них за последние два месяца драйверы обновились аж 7 раз. Последнее обновление от 20.12.2011.

Собираем имидж от группы SPAZE.

1. Все выше сказанное по линуксу и доп. пакетам остается актуально.

2. Клонируем на линукс машине git от SPAZE:
git clone git://spaze.git.sourceforge.net/gitroot/spaze/spaze spaze

3. Переходим в созданную директорию spaze
cd spaze

4. Скачиваем сырцы:
make download_sources

5. Создаем имидж.
make -f Makefile image

По умолчанию создаются три типа имиджей
patch.e2
dreambox-image-azboxhd-дата создания имиджа.rootfs.tar.bz2
dreambox-image-azboxhd-дата создания имиджа.cramfs

Для установки нам нужен patch.e2

Его можно найти по пути
/home/ваша_директория/spaze/azboxhd/build/tmp/deploy/images/

Перетаскиваете patch.e2 на компьютер и устанавливаете стандартным образом при помощи AZUp v2.1.4

Устанавливается имидж с ядром
Linux AZBoxHD 2.6.22.19-25-opensat #80

Кому лень крутить самому, подвешиваю собранный сегодня имидж.
http://www.multiupload.com/R85E4K43JN

Но вообще то SPAZE обещала к рождеству выпустить свежий имидж с ядром от Opensat. Может имеет смысл подождать?

Если чего не хватает, наверное найдете здесь:
http://sourceforge.net/projects/spaze/files/
 

Corwin

Профи в Сат-ТВ
Всем доброй ночи. Как запустить enigma2 на юбунте? Все по описанию сделал, но найти не могу какой файл запускает.
 

ddv122

Любитель Сат-ТВ
Доброго времени суток , ребята а имиджи на базе OpenATV /OpenLD случае не кто не пробовал собрать самостоятельно?
 
Сверху