Android Kernel and ROM building

I am new into compiling my own ROMs (AOSP and LineageOS) for my mobile devices. I am getting some unexpected errors while attempting to compile at home. (I’m on the road now and going to try it with my laptop while away for a few days)

I am following this guide to build lineageos after successfully building AOSP and installing it on my device. Build for shamu | LineageOS Wiki

To build LineageOS, you’ll need:

* `bc bison build-essential ccache curl flex g++-multilib gcc-multilib git gnupg gperf imagemagick
 lib32ncurses5-dev lib32readline-dev lib32z1-dev liblz4-tool libncurses5 libncurses5-dev
 libsdl1.2-dev libssl-dev libxml2 libxml2-utils lzop pngcrush rsync
 schedtool squashfs-tools xsltproc 
 zip zlib1g-dev`

For Ubuntu versions older than 20.04 (focal), install also:

* `libwxgtk3.0-dev`

While for Ubuntu versions older than 16.04 (xenial), install:

* `libwxgtk2.8-dev`

#### Java

Different versions of LineageOS require different JDK (Java Development Kit) versions.

* LineageOS 18.1: OpenJDK 11 (included in source download)
* LineageOS 16.0-17.1: OpenJDK 1.9 (included in source download)
* LineageOS 14.1-15.1: OpenJDK 1.8 (install `openjdk-8-jdk`)
* LineageOS 11.0-13.0: OpenJDK 1.7 (install `openjdk-7-jdk`)*

It appears I’m missing some dependencies. Is there a package that I can install that will give me everything I need to build Android ROMs and Kernels? I also noticed that libcurses5 appears maybe broken or not where “brunch” expects to find it?

I am going to try and build manjaro 64 for my pinephone sometime in the upcoming weeks too, does there exist a package to obtain all the prerequisites?

I’d like to point out I know there exists the meta packages in the AUR - but the Manjaro documentation Arch User Repository - Manjaro does not support this method so I thought I’d check to see if there’s another method that respects this.

is libncurses5, but is part of the ncurses 6.2 from official repositories. Is not broken, but has libncurses6

for taht you need wxgtk from official repositories, and wxgtk3-dev from AUR

and for that you need
wxgtk2 from official repositories and wxgtk2-dev from AUR.

Just to make sure we are on the same page. Manjaro OS can have AUR packages, but is your responsibility to deal with them.

Why not using then the dev builds and give feedback ?

Or simply use the stable ones …

1 Like

An AUR pkgbuild exist for that AUR (en) - lineageos-devel

with regards to the AUR - i’m aware, which is why Im just simply trying to avoid AUR where possible to avoid having to deal with broken packages… while i use manjaro mostly and with more frequency, for gaming and my hobbies, i originally came from debian-stable and cento-os hardend previously. Gaming and mobile phreaking seems to like the bleeding edge a lot more, so i get scared when i see updates and usually wait almost a week before updating now cause otherwise the system sometimes doesn’t work as expected, which is why as a rule im trying to stick with the manjaro repos rather than the AUR.

My only complaint with the manjaro pinephone doesnt support even low end luks encryption yet. I was going to try mixing the mobian build script with the manjaro gnome build for the pinephone. I need element messenger and luks to use it as a daily driver.