Kitkat non-SSE3 build

The current Android NDK x86 ABI requires MMX, SSE, SSE2 and SSE3, and all NDK binaries are compiled with SSE3-specific optimizations. A fair choice, given that most, if not all, commercial Android products on x86 hardware use Atom CPUs, which supports all these. However, people who are looking to revive their old computers with a recent build of Android-x86 will be disappointed to find out that builds starting from 4.1 JellyBean will not boot.

Anything older than Core Solo/Duo does not support SSE3. Specifically, there are still many convertible / slate tablets running on Pentium M CPUs, such as the ThinkPad X41 Tablet. In order to give these computers a taste of KitKat, here I present a non-SSE3 build of Android-x86.

Caveats:

    1. As mentioned above, non-SSE3 CPUs are not compatible with the NDK x86 ABI. Therefore, apps with NDK binaries will not work on this build, even if it includes x86 binaries (instead of shipping ARM binaries only, as many apps do).

    2. This is a pretty crudely hacked build. Don't be surprised if things are broken. It worked fine during my limited testing, but I can't guarantee anything.

Build your own image

Start from a fresh repo sync of the kitkat-x86 sources, and apply these patches:

nonsse3_patches.tar.gz

The individual patch file names are the Git repos they should be applied in.

The patches should be pretty self-explanatory. Basically, change some CFLAGS, define a new ABI and arch variant, and duplicate some files for the new ABI / variant names.

Download a pre-built image

The images below are built from the latest kitkat-x86 sources as of 2014-09-04, with the above patch applied. They do not include Google Apps.

    • Vanilla image: android_x86_nonsse3_4.4r1_20140904.iso

    • This image does not have any further modifications.

    • Image for convertible tablets: android_x86_nonsse3_convertible_4.4r1_20140904.iso

    • This image contains some specific features for convertible tablets, such as the ThinkPad X41 Tablet. If the system sends SW_TABLET_MODE when switching to/from tablet mode, this build will hide the soft keyboard when in laptop mode and show it in tablet mode. If auto rotation is supported, it will be disabled in laptop mode only.

On a side note, the Intel PRO/Wireless 2200BG card doesn't work. It can probably be fixed by replicating the hacks in this thread, but I'm not motivated enough to do it. Popping an Atheros card into my X41t is much easier.

Note on Google Apps

I tried to install GApps on this build, and overall it's a failure.

The most successful trial is when I manually placed .apk files /system/app/{GoogleCalendarSyncAdapter,GoogleContactsSyncAdapter}.apk and /system/priv-app/{ConfigUpdater,GmsCore,GoogleLoginService,GooglePartnerSetup,GoogleServicesFramework,Phonesky,SetupWizard}.apk. I got Play Store to run, and downloaded the GMail app. However, GMail depends on the latest version of Google Services Framework, and GMail says GSF is not compatible with my model. Trying to update GSF fails with an unknown error code during application install: "2".

Other trials caused various error messages and sometimes constant force closes during use.

Update History

    • 2021-10-07: Updated links. I'm amazed people are still downloading KitKat!

    • 2014-09-06: Added ISO image for convertible tablets.

    • 2014-09-04: Updated ISO image to include recent changes up to 4.4r1.

    • 2014-07-16: Initial post.