20 agosto 2016

PINE A64+ - La resurrezione

Quasi non ci credo, eppure è tutto vero.
Dopo il mio primo articolo riguardante l'inutilità della board dovuta dalla totale mancanza di supporto software devo scrivere due righe per un aggiornamento sulla situazione.

Un'anima pia, l'utente jonsmirl, ha postato nel forum ufficiale una procedura per la compilazione dei sorgenti di Android 5.1 Lollipop con già incluse le patch di Allwinner.


Per curiosità ho provveduto a scaricare i sorgenti Android ed il pacchetto lichee che contiene il kernel, u-boot, toolchain e parti del software proprietario per la generazione delle immagini finali.

Tutto funziona! Compilazione andata a buon fine al primo colpo, ma, se siete utenti Linux Ubuntu 16.04 oppure, come me, utilizzate Linux Mint 18 vi serviranno due piccole patch per correggere due piccoli errori:

  1. Progetto build: Patch per fixare l'errore "rilocazione 43 non supportata"
  2. (*) Progetto u-boot: Patch per fixare l'errore "Makefile:1200: *** separatore mancante"

Per chi volesse cimentarsi nel provare a compilare un'immagine Android la procedura è la seguente:
  1. Preparare lo spazio di lavoro
  2. Scaricare i sorgenti di Android
  3. Scaricare il pacchetto lichee che contiene i componenti necessari al boot
  4. Compilare Android e lichee
  5. Preparare la MicroSD
Attenzione: Prima di procedere assicuratevi di avere repo installato, se vi manca potete fare riferimento a questa pagina su come scaricarlo ed installarlo: source.android.com/source/downloading.html#installing-repo

Iniziamo con il creare le directory necessarie:
$ mkdir pine64
$ cd pine64
$ mkdir android
$ mkdir lichee

Scarichiamo i sorgenti di Android 5.1 Lollipop:
$ cd android
$ repo init -u https://github.com/pine64-android/manifest.git -b master
$ repo sync

Scarichiamo il pacchetto lichee:
$ cd ../lichee
$ repo init -u https://gitlab.com/pine64-android/manifest.git -b master
$ repo sync

Compiliamo Android prima e lichee dopo:
Nota: Quando eseguite il comando ./build.sh config selezionate 0 a tutte le opzioni.
$ cd ../android
$ source build/envsetup.sh
$ lunch tulip_chiphd-user
$ make
$ cd ../lichee
$ ./build.sh config
$ ./build.sh
$ cd brandy
$ ARCH=aarch64 ./build.sh
$ cd ../../android
$ extract-bsp
$ pack

Se tutto procede nel migliore dei modi la procedurà vi avrà generato l'immagine finale in:
../lichee/tools/pack/sun50iw1p1_android_Baomi-db1000_uart0.img

Per poterla scrivere su MicroSD, purtroppo, bisogna per forza utilizzare un tool proprietario che è disponibile solo per Windows :-|
Potete scaricare PhoenixCard da qui: drive.google.com/file/d/0B0cEs0lxTtL3VmstaEFfbmU1NFk
(Link affidabile, preso direttamente dalla wiki di pine64.org)
Inserite la MicroSD, selezionate il file .img che volete flashare ed assicuratevi di aver selezionato l'opzione "Startup!".
Alla fine inserite la MicroSD nella board e se Android per verificare se Android si avvierà o meno.


(*) AGGIORNAMENTO:

Mentre scrivevo questo articolo lo sviluppatore autore della pubblicazione dei sorgenti ha già incluso il mio fix per l'errore numero 2 su git quindi se state leggendo questo articolo dopo sabato 20 agosto non necessitate più di doverlo includere manualmente.

Nessun commento:

Posta un commento