Preparing the Cygwin VM
- Install Oracle VirtualBox
- Create new virtual machine. Assign at least 120 Gb of virtual disk space and at least 4 Gb of virtual RAM to the newly created virtual machine.
- Install Windows (preferrably XP SP3) into the virtual machine and enter default username without non-English characters and spaces (preferrably "User"). Filesystem of disk C: should be NTFS.
- After installation of virtual OS, install Oracle Guest Additions and enable Shared Folder with a host system.
- Download setup-x86.exe from https://www.cygwin.com/ and install Cygwin (preferrably all packages) to the folder having name without spaces (preferrably "C:\Cygwin"). Downloading all packages from the Internet may take a long time.
- When done, shutdown the Cygwin VM and take snapshot "SNAP-1".
Important note: current version of Cygwin (as of 2016-04-21) seems non-functional, hanging forever in postinstallation scripts (this can be fixed by temporarily renaming bin\perl.exe) and yielding the following error during the very first binutils build:
Can't fork, trying again in 5 seconds at /usr/share/texinfo/Texinfo/Convert/Paragraph.pm line 123. 3 [main] perl 3244 child_info_fork::abort: unable to remap Normalize.dll to same address as parent (0x810000) - try running rebaseall
I was unable to resolve this error by running rebaseall, rebaseall -v, switching hypervisor and uninstalling guest/host integration tools, so I retracted to older version of Cygwin from my archives (2013-06-16). This error seems to be related to 32-bit address space exhaustion, so switching to 64-bit Cygwin running in 64-bit guest OS may be helpful, but I didn't try it.
>> Read next section or
buy already prepared
cross-compiler (€10) to save your time.