Choosing a Rockbox Development Platform for Windows.
NOTE:This is a work in progress still.
Why?
The Rockbox cross-compiler only works on Unix (not Windows), but a number of ways exist to get some kind of Linux behahiour on Windows to run the compiler on.
Prominent ones include:
- Cygwin
- Virtual Machines (VMWare, VirtualBox, VirtualPC, etc)
- CoLinux
- WinARM (Windows Port of the arm-elf-gcc toolchain, for ARM only)
- Interix (POSIX subsystem for Windows NT-based systems)
Breakdown
Cygwin
Pros
- Lightweight. No heavy RAM usage, no virtual network adapters show up,
Cons
Virtual Machines
Virtualization is a way of running an OS inside another one, such that one can run Linux in a window on Windows(or a different pair of OSs).
General Pros
- Compiling should be at nearly the same speed it would be at running on the raw metal, if sufficient RAM is available
- Gives an easy-to-use GUI for all development work
General Cons
- Heavy on resources (two operating systems at once takes some power). Several GBs free is best, and the more RAM the better.
- Heavy install. Often virtual network adapters will be added to your system, and other such things.
VMWare
Pros
- VMWare Player is free, and allows for easy use of the prebuilt Rockbox dev appliance--just drop it in.
- VMWare Workstation is arguably the best virtualization product for desktop use.
- Virtual appliances can be built for free using the online tool EasyVMX.
Cons
- VMWare Player does not allow creation of appliances, but many are available pre-built online(including one for Rockbox development)
- Workstation costs USD $189
- Both are closed source.
VirtualBox
Pros
- VirtualBox is maintained by Sun Microsystems and comes in both a proprietary and open source edition. Both versions are free like beer (for personal use).
- VirtualBox is available for many major operating systems.
- VirtualBox supports VMDK, which allows it to access VMWare disk images. It should also allow drop-in use of the prebuilt Rockbox dev appliance.
Cons
- The GPL version lacks a few features, namely USB passthrough to the guest, ability to RDP into the guest, and a virtual SATA controller.
Copyright © by the contributing authors.