Друзья сайта
Часто задаваемые вопросы
Оцените сайт

Активация и настройка среды на cloud.google.com процесс сборки прошивки на готовых дереве, ядре, вендоре.



И так, так как у меня закончился пробный период на старом облаке, и мне активировали новое, спасибо vinny-puh17.
В общем я решил описать актуальный процесс настройки Google Cloud Platform и настройки среды на убунте.
После того как вы создали учетку и активировали ее по адресу: cloud.google.com переходим в панель управления решениями от гугл.
Далее выбираем в меню пункт Экземпляры ВМ и создаем виртуальную машину как показано на скрине ниже

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


Подключаемся к виртуальной машине: 

Подключились

Первым делом обновляем систему командой 
sudo apt-get update


Дальше ставим яву, без нее мы ни чего не соберем

sudo apt-get install openjdk-8-jdk


Соглашаемся по запросу ждем Y и enter

дальше проверяем версию ява, должно получиться примерно так: 

java -version



Дальше устанавливаем нужные нам пакеты ubuntu 18.04

sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip bc ccache git imagemagick lib32readline-dev lib32z1-dev liblz4-tool pngquant libncurses5-dev libsdl1.2-dev libssl-dev libwxgtk3.0-dev libxml2 lzop pngcrush rsync schedtool squashfs-tools openjdk-8-jdk p7zip-full meld brotli qt4-qmake qt5-qmake android-tools-adb android-tools-fastboot python-networkx python-pip texinfo maven swapspace m4


Дальше устанавливаем нужные нам пакеты ubuntu 20.04 +

sudo apt-get install git gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip bc ccache git imagemagick lib32readline-dev lib32z1-dev liblz4-tool pngquant libncurses5-dev libsdl1.2-dev libssl-dev libxml2 lzop pngcrush rsync schedtool squashfs-tools openjdk-8-jdk p7zip-full meld brotli qt5-qmake android-tools-adb android-tools-fastboot python3-pip texinfo maven swapspace m4 python libncurses5


Соглашаемся по запросу ждем Y и enter ждем пока пройдет процесс установки.

Производим инициализацию .repo

mkdir ~/bin && curl https://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo && chmod a+x ~/bin/repo



Дальше настраиваем ccacheи даем компилятору понять пути

Указываем размер кэша (нужно это для последующих сборок, чтобы сократить время компиляции)

ccache -M 50G


Настройка рабочего окружения почти закончена - осталось открыть файл bash.rc:

sudo nano ~/.bashrc

И в самом конце вставляем эти строки:

export USE_CCACHE=1
export PATH=~/bin:$PATH



Сохраняем комбинацией ctrl+O, enter, ctrl+X.

Выполняем еще одну команду 

source ~/.bashrc

И так среду мы настроили, остается качать исходники, создаем папку для наших исходников

mkdir folder

cd folder


Если нет аккаунта на GITHUB, идем и регистрируемся, если есть то:
Авторизируемся:

git config --global user.email "ваша почта"

git config --global user.name "ваш логин"

Все если вы все сделали правильно, то вы авторизировались, теперь мы качаем исходники и начинаем процесс сборки

Предположим мы в каталоге ~/pe$, то идем на гит, берем нужный манифест, я сегодня буду это описывать на примере  evolution-x

https://github.com/evolution-x/manifest

выполняем те команды которые написаны в описании манифеста 

repo init -u https://github.com/evolution-x/manifest -b pie

repo sync -c -jx --force-sync --no-clone-bundle --no-tags

X меняем на на ваше значение, считаем кол-во потоков проца и тп, я ставлю 8 ну или 16, по барабану как он скачает, но качает минут 20 от силы.



Если вы все правильно сделали, пошел процесс скачки исходников


Дальше ждем...


После того как наши исходники скачались нужно им подкинуть, дерево, вендор, и ядро.

Опишу процесс когда эти составляющие уже есть.


Пользуясь случаем хочу сказать спасибо @mdeejay, за исходники.

Далее по очереди выполняем команды:

git clone https://github.com/BeastRoms-Devices/kernel_xiaomi_msm8953_vince.git -b lineage-16.0 kernel/xiaomi/vince



git clone https://github.com/vince-romodel/device_xiaomi_vince.git -b pie-4.9 device/xiaomi/vince

и

git clone https://github.com/vince-romodel/proprietary_vendor_xiaomi_vince.git -b pie-4.9 vendor/xiaomi

Все что нужно мы для сборки скачали, не буду описывать все нюансы.

Дальше в каталоге с исходниками вводим команды: 

. build/envsetup.sh

lunch aosp_vince-userdebug

mka bacon





Комментариев 7
  1. Si
    Вот бы ещё гайд по сборке ядра.А то уж много проблем с этим 
  2. uehlsh
    Подскажите:
    Как собрать treble прошивку по вашей инструкции?
    Просто там нет никакого Манифеста.
    https://github.com/phhusson/treble_experimentations/wiki/How-to-build-a-GSI%3F
    Ведь, если запустить, например, скрипт Phhusson работа ведь не пойдет через облако.
    1. waiser Ответ
      Скачиваются исходники, также закидываются дерево вендор трибл. там вроде была инструкция, и при запуске она сама патчит исходники и можно собирать. На 4пда в ветке трибл были инструкции тоже.
  3. Serg
    https://ibb.co/zVMFLwb как можно решить?

    1. waiser Ответ
      положить коммон дерево куда он просит, путь показан в логе
      1. Serg Ответ
         Это получается командой "git clone" в папку "device/oppo... " Правильно понял?
        1. waiser Ответ
          гит клон правильно туда куда пишет положить
          Ошибку лучше слать через пастбин или подобные сервисы, фото не надо, так бы сразу показал как
Гость, оставишь комментарий?
Имя:*
E-Mail: