If you've already seen this through the Google Groups interface, sorry! I'm
kind of confused about the syncing between the Google interface and this
list - and it seems that my posts never made it here. The original is here
(http://groups-beta.google.com/group/perl.perl6.internals/browse_thread/thre
ad/dd3cb5e94f1eb835/74b248bf61c2f1f6?_done=%2Fgroup%2Fperl.perl6.internals%3
F&_doneTitle=Back+to+topics&_doneTitle=Back&&d#74b248bf61c2f1f6).
I'm reproducing all 3 posts below
Post #1
-----------
I'm a Parrot newbie so forgive me if this has already been a-ddressed.
I'm trying to build Parrot (from CVS) on Win XP Sp2 with VS.-NET 2003.
1.The current build scripts for ICU refer to 'msdev'. 'msdev-' was the
executable for Visual Studio 6 . The executable, the command-line switches
as well as the file format have changed for VS.NET -2002 and
2003.Unfortunately, my unfamiliarity with Perl means that I -cannot submit a
patch :(
2. After downloading the latest ICU source from IBM's site, -I built that
from source (they have updated their src distribution t-o support building
using VS 2003).
Now, the Readme files says that you have to set icushared an-d icuheader -
but even after I set both to point to my ICU bui-ld, the build broke the
first time it tried to run parrot.exe (durin-g the nmake itself).
The offending piece of code is this (in string.c)
data_dir = Parrot_getenv("PARROT_ICU_DATA_DIR", &free_data_d-ir);
if (data_dir == NULL) {
const char *prefix;
char *p, *build_path;
build_path = data_dir = const_cast(DEFAULT_ICU_D-ATA_DIR);
/*
* if the installed --prefix directory exists th-en use it
*/
prefix = Parrot_get_runtime_prefix(interpreter, -NULL);
if (prefix) {
p = strstr(build_path, "blib");
assert(p);
--p; /* slash or backslash */
data_dir = mem_sys_allocate(strlen(prefix) +- strlen(p)
+ 1);
strcpy(data_dir, prefix);
strcat(data_dir, p);
free_data_dir = 1;
}
The first time I tried building it, the strstr call returned- a bad pointer.
Some investigation showed that the ICU data directo-ry was an empty string.
So this time, I tried building again, by passi-ng icudatadir to
Configure.pl.
The assert call wasn't being executed at all - must be somet-hing with the
compiler options.
It again crashed at the same spot - this time because the bu-ild_path
variable contained the ICU data dir -but there is no "blib" -anywhere
in it, making the strstr call fail.
Am I missing something pretty basic here?
Post #2
------------
I managed to get it to build finally. I built ICU 2.8 and co-py-pasted
the data output to the blib folder.I don't think this is the- way to do
it - but hey..it works :)
Post #3
----------
Yet another Win32 + VS 2003 update.
My 'nmake test' was failing with a liner error about nci_dlv-ar_vv.
After removing that from libnci_test.def, I was able to atle-ast run the
tests. Dynclass and nci tests failed - and at the end, got a- weird
error about perl.exe. Here's the output
Failed Test Stat Wstat Total Fail Failed List o-f Failed
----------------------------------------------------------------------------
t\dynclass\pybuiltin.t 5 1280 6 5 83.33% 1-2 4--6
t\dynclass\pyclass.t 6 1536 6 6 100.00% 1-6
t\dynclass\pycomplex.t 1 256 1 1 100.00% 1
t\dynclass\pyfunc.t 4 1024 4 4 100.00% 1-4
t\dynclass\pyint.t 25 6400 25 25 100.00% 1-25
t\pmc\nci.t 55 14080 56 55 98.21% 1-55
7 tests and 64 subtests skipped.
Failed 6/133 test scripts, 95.49% okay. 96/2166 subtests fai-led, 95.57%
oka
NMAKE : fatal error U1077: 'D:\Perl\bin\perl.exe' : return c-ode '0xff'
Stop.
Thanks,
Sriram