Dan Sugalski wrote: > Okay, folks, our base ICU as we ship with parrot just flat-out > doesn't seem to work with cygwin
I figured I would add my lessons learned here so that people don't have to start from scratch. ICU's static only implementation (Win32) has not been completed and likely will not be until June 25th or after. To get parrot to link to ICU dynamically, you need to do the following: 1. Modify config/init/hints/cygwin.pl and add link => 'c++', 2. Ensure that the path to the .dlls are in your PATH env variable. Otherwise you will get "xxx.dll not found". 3. Ensure that the .dlls are all executable or else you will get initialization error 0xc0000022 4. If you are telling parrot to link to a pre-installed version of ICU you need to modify the config/gen/icu.pl to tell it where the $icudatadir is or else parrot.exe will yell at you about not being able to find the data files Ok - so once you have parrot dynamically linked to ICU fire it up: c++ -o parrot.exe -L/usr/local/lib -g imcc/main.o blib/lib/libparrot.a -lcrypt -licuuc -licudt Invoking Parrot to generate library/config.fpmc--cross your fingers /parrot config_lib.pasm make: *** [library/config.fpmc] Segmentation fault (core dumped) Now here is where I throw my hands up. I am going to try one more thing that I have previously tried (but not sure if I knew about the .dlls permission problem then) but I do not have much hope that it will work. Joshua Gatcomb