Compiling Wine on the Raspberry Pi – Making the Build and First Test

Before I went to sleep last night I ran the make command to compile the development version of Wine 2.12 from source. Understandably, the compilation took quite a lot of time. After spending two hours periodically glancing at it, I decided to just go to sleep. I woke up to a Raspberry Pi with a fully compiled version of Wine with no errors or warnings! I was excited the whole day I was at work wishing I could just be home to test an actual Windows game on my Raspberry Pi.

After finally getting home and attending to all of the urgent errands on my list for the day, I downloaded The Longest Journey from GOG.com and attempted to run the setup utility on my Raspberry Pi system. It was then that I received an error I have never encountered in my history of using Wine.

Warning: memory above 0x80000000 doesn’t seem to be accessible.
Wine requires a 3G/1G user/kernel memory split to work properly.

My first thought was, “Since when does Wine require 4 GB of RAM? I’m going to need an external hard drive for some super slow swap space.” As I sat contemplating my dilemma, I decided to research the error to see how others handled it. Apparently this error has nothing to do with the amount of memory you have, but instead how it is handled by the kernel. When compiling the kernel, there are around four different ways to configure the allocation of memory between the user and the kernel. From what I have been reading it seems Ubuntu Mate’s default kernel is allocated 2G/2G.

Therefore, it appears it is time for me to reconfigure and recompile my kernel. Stepping through kernel recompilation instructions on the Ubuntu BuildYourOwnKernel Wiki, I have found significant differences in their instructions and how the Raspberry Pi kernel is actually configured. Over the next day I will attempt to recompile my own kernel and then post supplemental instructions to those who may have difficulty recompiling their Raspberry Pi Linux kernel and to my future self should I have to do this again.

Leave a Reply

Your email address will not be published. Required fields are marked *