Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save mas4112/fff534f97d081fd45ec9513f5670717e to your computer and use it in GitHub Desktop.

Select an option

Save mas4112/fff534f97d081fd45ec9513f5670717e to your computer and use it in GitHub Desktop.
Workarounds for building Android 11 on 8GB RAM
Workarounds for building R on 8GB RAM environment:
1. At the start of the build:
[ 99% 138/139] /mnt/ssd/lineage/out/soong/.bootstrap/bin/soong_build /mnt/ssd/lineage/out/soong/build.ninja
This used to take around 30mins, after enabling zram now it takes around 30secs (thanks to @kdrag0n for the zram idea) which is on par with what happens in 16GB RAM building environments
sudo apt install zram-config for installing zram-config package
sudo nano /etc/fstab and add a # in front of the swap disk if you have one and then reboot
After booting cat /proc/swaps to check if zram is enabled or not
2. To avoid issues while building metalava (outOfMemoryException: java heap space)
Pick this commit --> https://github.com/verNANDo57/android_build_soong/commit/5743f1ba9d95ff9c1f418066dcfdde9197c53a5a
3. To avoid huge metalava compilation times, compile the api-stubs-docs and other packages manually first then continue with mka bacon etc
For example this is what I'm using now in LineageOS:
. build/envsetup.sh && lunch lineage_joyeuse-userdebug & mka api-stubs-docs & mka module-lib-api-stubs-docs & mka system-api-stubs-docs & mka test-api-stubs-docs & mka bacon
Each of those api-stubs-docs, module-lib-api-stubs-docs etc took around 4-7 mins
Increasing of heap from soong directory or other env exports are not required
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment