Rockbox Development > Starting Development and Compiling

Setting up the Win32 cross compiler from WSL


I've done this before but cannot seem to get it to work now.  I've followed the instructions here:

I configure a win32 simulator build and disable codecs (since mikmod won't build on win32 due to typedef conflicts).  The build process fails:

--- Code: ---CC apps/tagcache.c
CC lang_core.c
CC firmware/powermgmt.c
CC firmware/usb.c
CC firmware/logf.c
CC firmware/panic.c
CC firmware/scroll_engine.c
CC firmware/font.c
CC firmware/drivers/lcd-16bit.c
CONVBDF fonts/08-Schumacher-Clean.bdf
CC winsim/sysfont.c
AR libfirmware.a
CC lib/rbcodec/metadata/hes.c
AR librbcodec.a
LD rockboxui.exe
/usr/bin/i686-w64-mingw32-ld: /home/mike/rockbox/winsim/apps/bitmaps/mono/default_icons.o: Relocations in generic ELF (EM: 40)
/home/mike/rockbox/winsim/apps/bitmaps/mono/default_icons.o: error adding symbols: File in wrong format
collect2: error: ld returned 1 exit status
/home/mike/rockbox/uisimulator/uisimulator.make:34: recipe for target '/home/mike/rockbox/winsim/rockboxui.exe' failed
make: *** [/home/mike/rockbox/winsim/rockboxui.exe] Error 1

--- End code ---

I'm running mingw-w64 5.0.3-1 (per apt-get).

What is the output of "file /home/mike/rockbox/winsim/apps/bitmaps/mono/default_icons.o"?


--- Code: ---mike@Home-PC:~/rockbox/winsim$ file /home/mike/rockbox/winsim/apps/bitmaps/mono/default_icons.o
/home/mike/rockbox/winsim/apps/bitmaps/mono/default_icons.o: ELF 32-bit LSB relocatable, ARM, EABI5 version 1 (SYSV), not stripped

--- End code ---

So something is wrong there. 

To follow up on our brief exchange on IRC, I can compile the current version on my Ubuntu on Windows Subsystem for Unix following the guide at

I was wrong that I compiled mine last in winter, it was actually in june 2021.

The only thing I did to make it compile was edit apps/plugins/SUBDIRS to remove midi/mikmod/lua/lua_scripts. It is quite possible some of these can be made to compile, but I did not need them.

My Ubuntu is a bit old now though, it is 20.04 (outdated too, last updated june 2021). mingw-w64 claims to be 7.0.0-2, with i686-w64-mingw32-gcc 9.3-win32.

With those 4 plugins removed, it compiles quickly and without errors.


[0] Message Index

Go to full version