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 

Reply via email to