Então, o que basicamente faremos é configurar um subsistema Windows para Linux (WSL) para nosso ambiente de construção. Isso é incrivelmente fácil, embora muitas vezes esquecido, já que a maior parte do que precisamos está disponível na Microsoft Store.
Sua primeira etapa é abrir a Microsoft Store, pesquisar Ubuntu 18.04 e instalar o aplicativo.
Em seguida, abra o aplicativo Ubuntu 18.04 e siga o assistente de configuração inicial.
Agora abra o terminal Ubuntu e instale os seguintes pacotes:
sudo apt install android-sdk-platform-tools bc build-essential ccache curl g ++ - multilib gcc-multilib git gnupg gperf imagemagick lib32ncurses5-dev lib32readline-dev lib32z1-dev liblz4-tool libncurses5-dev libsdl1.2-dev libssgl-dev libw3 .0-dev libxml2 libxml2-utils lzop m4 openjdk-8-jdk pngcrush repo rsync schedtool squashfs-tools xsltproc zip zlib1g-dev
Em seguida, você precisa criar um novo diretório para o código-fonte e navegar até ele:
mkdir -p ~ / android / lineage && cd android / lineage
Agora vamos iniciar o repositório de origem do LineageOS:
repo init -u https://github.com/LineageOS/android.git -b lineage-15.1
Adicione este pedaço de código a .repo / local_manifests / roomservice.xml (se este arquivo não existir, você pode simplesmente criá-lo)
E vamos baixar o código-fonte:
sincronização repo
Agora, isso é puramente opcional, mas é recomendado ativar o cache para acelerar sua construção - fazemos isso através de “ccache”.
Basicamente, você deseja adicionar a seguinte linha ao arquivo ~ / .bashrc:
Exportar USE_CCACHE = 1
Em seguida, especifique a quantidade máxima de espaço em disco que você deseja que o ccache aproveite:
Ccache -M 50G
Substitua o “50G” nessa linha por sua preferência - ele corresponde à quantidade de cache que você está alocando em gigabytes. Se você estiver construindo para apenas um dispositivo, pode usar entre 25G - 50G, mas se estiver construindo para vários dispositivos que não compartilhe a mesma fonte de kernel você deve aumentá-lo para cerca de 75 - 100G. Em ambos os casos, usar o ccache reduzirá uma quantidade significativa de tempo de suas compilações.
Em seguida, você deve selecionar o seguinte commit:
source build / envsetup.sh && repopick -t wsl-compile
Em seguida, você irá preparar o código específico do dispositivo:
café da manhã o codinome do seu dispositivo
Faça bisão e ijar de 64 bits:
fazer bisão && fazer ijar
Defina BISON_EXEC para executar a versão de 64 bits do bison e defina IJAR_EXEC para executar o ijar adaptado:
export BISON_EXEC = ~ / android / lineage / out / host / linux-x86 / bin / bison export IJAR_EXEC = ~ / android / lineage / out / host / linux-x86 / bin / ijar
(adicione os comandos a ~ / .bashrc se você não quiser ter que executá-lo toda vez que você reabrir uma linha de comando)
E agora você pode iniciar a construção!
Escovar o codinome do seu dispositivo
Para construir no futuro, você só precisa repetir os passos de adicionar o .repo / local_manifests, habilitar o ccache, e definir o BISON_EXEC e IJAR adaptado.
Você também precisa fazer bisão e ijar toda vez que você liberar o diretório.
Algumas notas finais:
- Não adicionar / editar seus arquivos Linux do Windows, os arquivos provavelmente serão corrompidos no bash. Faça isso dentro do subsistema Linux.
- Não usar mnt para baixar o código-fonte para outras unidades e, em seguida, siga este guia. Você deve baixar o código-fonte para as pastas apenas dentro do subsistema Linux!