All, It is still unclear to me if turning off ARENA_DOD_FLAGS in include/parrot/pobj.h is required yet or not. Leo suspects a broken memalign function but since parrot was working prior to April 7th and nothing changed except parrot, I am not too sure. As soon as this posts I will start digging around there. You will know if you need to do this if parrot coredumps every time you use it ;-)
Using the ICU that is bundled with parrot: 1. make realclean 2. cvs update -dP 3. add link => 'c++', to config/init/hints/cygwin.pl 4. remove --disable-shared from config/gen/icu.pl 5. add <parrot root dir>/blib/lib to your PATH env variable 6. make It will bomb out when linking to ICU - that's ok 7. chmod 755 blib/lib/* 8. c++ -o parrot.exe -L/usr/local/lib -g imcc/main.o blib/lib/libparrot.a blib/lib/libicuuc.dll blib/lib/libicudata.dll -lcrypt You could mess with the config/gen/icu.pl and config/gen/makefiles/root.in but why bother 9. make FYI - the make process builds ICU twice which I doubt is supposed to happen. I have very little "free" time, planning a wedding an all, but if I get a chance I will fix the make process for this. Using a system ICU built from source > 2.6 1. make realclean 2. cvs update -dP 3. add link => 'c++', to config/init/hints/cygwin.pl 4. Depending on the system version of ICU and the --datadir option, you may have to: Modify $icudatadir = '' to the proper path (usually <system prefix>/share/icu/<version> if there is no .dat file in that directory you can skip this step 5. perl Configure.pl --icuheaders='<system prefix>/include' (usally /usr/local/include) --icushared='-L<system prefix>/lib -l<uc library> -l<data library' if using /usr/local, the default, the -L is not required 1st library will usually be -licuuc, but if built statically and a newer version, -lsicuuc 2nd library will usually be -licudata, but if built with a new version, -licudt and if static -lsicudt 4. If it is not already, add <system prefix>/lib to the PATH env variable 5. chmod 755 <system prefix>/lib/*icu* 6. make Using a system ICU built from a binary download (icu-2.8-Win32_msvc7.zip) 1. make realclean 2. cvs update -dP 3. add link => 'c++', to config/init/hints/cygwin.pl 4. If it is not already, add <system prefix>/bin to the PATH env variable 5. Download the msvcr70.dll to <system prefix>/bin http://www.dll-files.com/dllindex/dll-files.shtml?msvcr70 6. chmod 755 <system prefix>/bin/*.dll 7. perl COnfigure.pl --icuheaders='<system prefix>/include' --icushared='-L<system prefix>/bin -licuuc28 -licudt28l' 8. make These instructions still may contain errors but there are no huge ommissions. If I ever get some "free time", I intend to provide some patches that makes this much less of a PITA. If anyone else feels like doing this I certainly would have no hard feelings. Finally, if you haven't done much development on Cygwin and you get a "Unable to remap" error about some .dll, then you will need to run the rebaseall utility. I do not believe this has anything to do with parrot but I can't be sure since I needed to do it for IO::Socket::SSL to work properly much earlier on. Cheers Joshua Gatcomb a.k.a. Limbic~Region __________________________________ Do you Yahoo!? Win a $20,000 Career Makeover at Yahoo! HotJobs http://hotjobs.sweepstakes.yahoo.com/careermakeover