{"id":15631834,"url":"https://github.com/molikuner/android-development-32bit","last_synced_at":"2026-05-06T22:06:57.474Z","repository":{"id":175096152,"uuid":"143447777","full_name":"molikuner/android-development-32bit","owner":"molikuner","description":"Build your app on a 32bit Linux system","archived":false,"fork":false,"pushed_at":"2018-12-17T15:48:17.000Z","size":5,"stargazers_count":2,"open_issues_count":2,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-04T19:49:37.667Z","etag":null,"topics":["32bit","aapt","aapt2","android","build","build-tools","linux","qemu"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/molikuner.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-03T16:04:55.000Z","updated_at":"2024-07-03T15:02:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"57975d88-fe6c-4cdd-9456-24d7749f0280","html_url":"https://github.com/molikuner/android-development-32bit","commit_stats":null,"previous_names":["molikuner/android-development-32bit"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/molikuner%2Fandroid-development-32bit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/molikuner%2Fandroid-development-32bit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/molikuner%2Fandroid-development-32bit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/molikuner%2Fandroid-development-32bit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/molikuner","download_url":"https://codeload.github.com/molikuner/android-development-32bit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246230541,"owners_count":20744349,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["32bit","aapt","aapt2","android","build","build-tools","linux","qemu"],"created_at":"2024-10-03T10:41:43.123Z","updated_at":"2026-05-06T22:06:52.433Z","avatar_url":"https://github.com/molikuner.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Android Development with 32bit Linux (Debian)\n\nGoogle removed support for 32bit Linux for there build-tools for Android.\nLast officially supported version is `23.0.3`. This version is too old for current development.\n\nThe main problem is that aapt2 is a 64bit executable and won't run on 32bit.\n\nLately I found a solution for this problem.\nYou can emulate a 64bit system for exactly one executable with [qemu](https://www.qemu.org/).  \nBut when just running it you will see the missing libraries. \n\nThose are in `/lib/x86_64-linux-gnu`.\n\n## Setup\n\nObviously these libraries won't be found on a 32bit system because they are for 64bit.\nThis means installing them with apt will be difficult (at least I don't know how).\n\n- You will need [libc6](https://packages.debian.org/stretch/amd64/libc6), [libc6-dev](https://packages.debian.org/stretch/amd64/libc6-dev), [zlib1g](https://packages.debian.org/stretch/amd64/zlib1g) and [libgcc1](https://packages.debian.org/stretch/amd64/libgcc1).\nYou should download the deb packages for your system (64bit instead of 32bit) into a new working folder.\n- Create a folder `fakeInstall` in this folder.\n- Now run:\n\n  ```bash\n  dpkg -x libc6_2.24-11+deb9u3_amd64.deb fakeInstall\n  dpkg -x libc6-dev_2.24-11+deb9u3_amd64.deb fakeInstall\n  dpkg -x zlib1g_1.2.8.dfsg-5_amd64.deb fakeInstall\n  dpkg -x libgcc1_6.3.0-18+deb9u1_amd64.deb fakeInstall\n  ``` \n  (update the versions to yours)\n  \n  This will install the packages into the `fakeInstall` folder.\n- Now we need to put everything into the right place:  \n  (attention when working with `sudo`!)\n  \n  ```bash\n  sudo mv fakeInstall/lib/x86_64-linux-gnu /lib/\n  sudo mkdir -p /lib64\n  sudo mv fakeInstall/lib64/ld-linux-x86-64.so.2 /lib64\n  ```\n- Basically the preparation is finished.  \n  So let's install [qemu](https://www.qemu.org/). Luckily it's in the default apt list  \n  (at least on debian `stretch`):\n  \n  ```bash\n  sudo apt-get update\n  sudo apt-get install qemu qemu-user\n  ```\n- Last thing to do is to use `qemu` with `aapt2` instead of only `aapt2`\n\n  ```bash\n  mv $ANDROID_HOME/build-tools/28.0.1/aapt2 $ANDROID_HOME/build-tools/28.0.1/_aapt2\n  ```\n  Now move the aapt2 script from this repo into `$ANDRID_HOME/build-tools/28.0.1/` and give it execution permission by\n  ```bash\n  chmod +x $ANDROID_HOME/build-tools/28.0.1/aapt2\n  ```\n  \n  If you don't have a global ANDROID_HOME variable replace it with the corresponding path.  \n  Replace the build-tools version with yours!\n  \n  At some installations / in newer versions you also need to replace the `aapt2` in\n  `~/.gradle/caches/transforms-*/files-*/aapt2-*-linux.jar/*/aapt2-*-linux/` like above.\n  This is a cache which means you need to try to build it and replace it afterwards.  \n  The `*` needs to be replaced with your specific versions (there should be only one at first).\n  \n- That's it. You can now build on 32bit Linux apps for Android.  \n  Your working folder can be deleted. There is no reference to it.\n\n## Further Information\nI have tested this:  \n```\n$ uname -a\nLinux Generic 4.9.0-7-686-pae #1 SMP Debian 4.9.110-1 (2018-07-05) i686 GNU/Linux\n\n$ qemu-x86_64 -version\nqemu-x86_64 version 2.8.1(Debian 1:2.8+dfsg-6+deb9u4)\nCopyright (c) 2003-2016 Fabrice Bellard and the QEMU Project developers\n```\nMaybe it also works on other distro than Debian.  \nCurrently I can't test more than pure Debian.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmolikuner%2Fandroid-development-32bit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmolikuner%2Fandroid-development-32bit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmolikuner%2Fandroid-development-32bit/lists"}