Part 2 of why you should never try to do any form of Android development ever.
So, take two. I gave up on the Debian virtual machine … yesterday. Yeah, it was yesterday. I feel like that xkcd strip is rather relevant, the last 36 hours or so have been a blur of mexican takeout, cola and compiler errors.
So, a few things I did:
The Arch Linux iso I keep around is from 2016-09-03 because I’m too lazy to download a new one. After recent upgrades to the virtualization server, I updated all the stuff on the system as well, which updated qemu and libvert and such. Now, fun fact: on occasion Arch will hang when exposed to a version of the QXL video driver it doesn’t understand, with common timing being while you’re trying to install Arch, which is positively wonderful.
As much fun as that was, I’ve had the same issue with Haiku, so I just set it to VGA and got on with my day.
So, after waiting about 5 hours for the cyanogenmod source to download AGAIN, I got to work trying to compile it - grab the binary blobs from the proprietary-vendor-motorola repo, breakfast osprey, make -j8…
After about 15 minutes it tells me it failed. Apparently this is a known issue, caused by certificate issues on the Cyanogenmod maven repo. Okay, great. In the #cyanogenmod-dev topic on Freenode it has a link to a workaround. Righto, should be easy to just apply this patch, right?
Wrong. repopick -f 174025
couldn’t figure out where it was meant to put the files. Apparently it should work if you’re in ~/android/system, but it sure as hell didn’t. At least the solution was simple.
wget https://maven.cyanogenmod.org/artifactory/gello_prebuilds/org/cyanogenmod/gello/40/gello-40.apk --no-check-certificate
About 20 minutes into another build, I opened htop to check usage, mainly because I was bored. I was under the impression I’d given that virtual machine 4 threads and 8GB of RAM.
I had not.
It had 4 threads and 1GB of RAM.
Among other things, this caused several builds to crash.
I am not a clever man.
First compile worked! Now time to customize it (and use ccache).