+375 (29) 352-88-99
+375 (29) 532-88-99
Режим работы:

с 10.00 до 19.00.
Без обеда и выходных.

Как собрать андроид из исходников

Для сборки 4-й версии Android, CM9, CWM recovery 6.х нужен ПК с 64-битной Ubuntu. (я использовал Ubuntu 12.10). Ограничение вызвано необходимостью установки дополнительных библиотек, которые существуют только для 64-битных систем. Диск не менее 30 Гбайт под систему. (после загрузки исходников и компиляции recovery на моём ПК осталось свободного места около 10 Гбайт).
Желательно иметь в наличии безлимитный интернет. Загрузить придётся более 10 Гбайт. После распаковки места останется ещё меньше.
Запускаем терминал и устанавливаем необходимые библиотеки:

user@HP:$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev:i386 g++-multilib mingw32 openjdk-6-jdk pngcrush schedtool tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386

Устанавливаем символьную ссылку для устранения конфликта имен:

user@HP:$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

Пакет под названием “android-tools”, в который включены консольные утилиты “adb” и “fastboot”, загружен в официальные репозитории Ubuntu 12.10 и доступен в официальных репозиториях Ubuntu 12.10, так что всё, что нужно сделать – это найти его в Центре приложений Ubuntu и кликнуть на кнопку установки. Второй вариант:

user@HP:$ sudo apt-get install android-tools-adb android-tools-fastboot

Настроим USB.

user@HP:$ gksudo gedit /etc/udev/rules.d/51-android.rules

 

Вставляем это внутрь пустого текстового файла.

Сохраняем и закрываем файл, а затем выполняем следующую команду:

user@HP:$ $ sudo chmod a+r /etc/udev/rules.d/51-android.rules

Создаем необходимые директории на ПК:- название не МЕНЯТЬ.

user@HP:$ mkdir ~/bin
user@HP:$ PATH=~/bin:$PATH

По пути ~/android/system будем сохранять исходники CyanogenMod.

user@HP:$ mkdir -p ~/android/system

Качаем утилиту repo в свой домашний каталог и делаем её исполняемой:

user@HP:$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
user@HP:$ chmod a+x ~/bin/repo

Для вступления изменений в силу ОБЯЗАТЕЛЬНО перезагружаем ПК.
user@HP:$ cd ~/android/system/
– переходим в ранее созданную папку для исходников
Для CWM6 качаем исходники CyanogenMod для Jelly Bean. Вводим логин и адрес электронной почты в процессе закачки.

user@HP:~/android/system$ repo init -u git://github.com/CyanogenMod/android.git -b jellybean

Проводим синхронизацию (eсли в процессе закачки соединение оборвалось повторно вводим команду):

user@HP:~/android/system$ repo sync

 

Выполнено успешно (строки в терминале):

Собираем утилиты, которые потребуются для компиляции:

user@HP:~/android/system$ make -j4 otatools

 

Выполнено успешно (строки в терминале):

Утилиты собраны. Находятся по пути:
/home/user/android/system/out/host/linux-x86/bin/
Откроем файл ~/.bashrc командой

user@HP: gedit ~/.bashrc

и в самый-самый конец добавим такие строчки:

PATH=$PATH:~/android/system/out/host/linux-x86/bin
export PATH

После чего перезагружаем терминал.
Загружаем «дерево устройства» для нашего девайса. «Дерево устройства» это набор конфигурационных файлов с настройками для определенного девайса. Его либо необходимо загрузить из стороннего источника либо собрать самому. Самый оптимальный вариант, это GitHub — самый большой веб-сервис для хостинга проектов и их совместной разработки.
Переходим в папку куда будем клонировать «дерево устройства»:

user@HP: $ cd ~/android/system/device $ mkdir huawei
user@HP:~/android/system/device$ cd ~/android/system/device/huawei

Клонируем с GitHub «дерево устройства». (github.com/forumber/android_device_huawei_u8800.git – выложенная в свободный доступ модификация Recоvery) Папка должна называться так же как стандартное имя устройства: u8800.

user@HP:~/android/system/device/huawei$ git clone git://github.com/forumber/android_device_huawei_u8800.git u8800

Вариант если нужно ядро своего телефона файл – kernel при компиляции без «дерева устройства».
(Добавляем новое устройсто (свой телефон) в дерево CynogenMod

user@HP:~/android/system$ build/tools/device/mkvendor.sh huawei u8800 ~/recovery/boot.img

boot.img ядро нашего телефона, которое заранее положили в домашний каталог в папку recovery
~/recovery/boot.img – путь к вашему boot.img или recovery.img.
После завершения работы скрипта будет создан каталог huawei/ u8800 в каталоге devices в дереве исходников CyanogenMod user@HP:~/android/system$
В этом каталоге должны появиться сгенерированные файлы AndroidBoard.mk, AndroidProducts.mk, BoardConfig.mk, device_.mk, kernel, system.prop, recovery.fstab, и vendorsetup.sh.
В файле BoardConfig.mk нужно прописать размеры разделов телефона, их можно узнать выполнив на телефоне команду cat /proc/mtd в любом эмуляторе терминала.
Файл kernel это ядро вашего телефона, которое было извлечено из файла boot.img
В файле recovery.fstab записана разметка телефона.)

Выполнено успешно (строки в терминале):

Подготовка к компиляции:

user@HP:~/android/system$ source build/envsetup.sh

или

user@HP:~/android/system$ . build/envsetup.sh

 

Выполнено успешно (строки в терминале):

Теперь можно попробовать собрать recovery. В корне дерева с исходным кодом CyanogenMod нужно выполнить:

user@HP:~/android/system$ lunch full_u8800-eng

Или получим список устройств:

user@HP:~/android/system$ lunch

 

Выполнено успешно (строки в терминале):

Выбираем 6 (свой):

Which would you like? [full-eng] 6

 

Выполнено успешно (строки в терминале):

Следующая команда собирает образ recovery. В случае, если сборка пройдет без ошибок, свежесобранный образ можно найти по пути:/home/user/android/system/out/target/product/u8800/recovery.img

user@HP:~/android/system$ make -j4 recoveryimage

 

Выполнено успешно (строки в терминале):

Устанавливаем Oracle Java 6 в Ubuntu через PPA :thank_you:
Хотя компиляция CWM проходит без проблем, чтобы исключить предупреждение о не соответствии веси Java 6 добавляем PPA-репозиторий Java команды WebUpd8 и установливаем Oracle Java 6:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java6-installer

исходник 4pda.ru/forum/index.php?showtopic=419183&st=20

 

компиляция ядра: http://fastandclever.ru/google-android/kompilyatsiya-yadra-linux-dlya-android-ustroystv-s-pomoshhyu-ndk-ili-linaro/

Как заработать на мобильных приложениях — короткий список:

Paid App Downloads – ex. WhatsApp
In-app purchases – ex. Zynga Poker
In-app subscriptions – ex. NY Times app
Advertising – ex. Flurry, AdMob
Digital-to-physical – ex. Red Stamp, Postagram

Оставьте отзыв