README.cygwin - Parrot under cygwin
parrot builds out of the box under cygwin. Some tweaks are needed for different names of dynamic loading of some dll's.
You'll need the following cygwin packages to build parrot.
If you use svn to get a copy of parrot, you should use the cygwin svn and not the tortoiseSVN client to avoid build errors.
This is no official cygwin package yet. However, icu4c-3_8 builds out of the box on cygwin. http://download.icu-project.org/files/icu4c/3.8/icu4c-3_8-src.tgz
Note that ICU is now optional, you can build Parrot without it, by not installing it or asking Parrot to ignore it (
export PATH=`pwd`/blib/lib:$PATH perl Configure.pl make make test # see PLATFORMS for known issues. make reallyinstall
- Makefile tuning
rename libparrot.dll to cygparrot.dll, create an interim libparrot.dll.a
for make test: blib/lib must be added to the PATH, or link blib/lib/libparrot.dll to the parrot root. ln blib/lib/libparrot.dll libparrot.dll
- DLL versioning
cyg*-1.1.dll instead of lib*.so.1.1
Thanks to the " http://" in Windows DLL Hell and the impossibility of file hardlinks, windows dll names are versioned, so the loadlib function or the various pir's needs more logic.
Either add the version to each loadlib call, and stem the version from POSIX versions within get_path(), or add an optional version argument to loadlib for win32. Or just fix all the pir's.
nmake detection probably wrong. replace by make.
Threads, Events, and Signals are missing.
Last updated: 2 March 2008