----- Original Message ----- 
From: "Steve Cicala" <[email protected]>

>
> C:\Perl64\cpan\build\PDL-2.4.4-Qtfi9k>perl -Mblib -MPDL::LiteF -MPDL::Types
> -le
> "srand 5; $r1=random 5;srand 5; $r2=random 5;print $r1;print $r2"
> [0.0012512207 0.56356812 0.19329834 0.80871582 0.58499146]
> [ 0.4798584 0.35028076 0.89593506 0.82281494 0.74658203]
>
> C:\Perl64\cpan\build\PDL-2.4.4-Qtfi9k>perl -Mblib -MPDL::LiteF -MPDL::Types
> -le
> "srand 5; $r1=random 5;srand 5; $r2=random 5;print $r1;print $r2"
> [0.0012512207 0.56356812 0.19329834 0.80871582 0.58499146]
> [ 0.4798584 0.35028076 0.89593506 0.82281494 0.74658203]

Yes - I'm now in a position where I can reproduce the problem. I'm getting 
exactly the same thing using VC 2008 (32-bit) compiler and ActivePerl-5.10 
(32-bit build). All failures are related to the use of a 2008 compiler with 
a perl built using a different compiler (in this case, VC6). Out of 
curiosity, I'm going to see if the same problems arise when using VC 7 with 
ActivePerl - or whether it's limited to VC 2008 - but I haven't had time for 
that yet.


> Yes, I'm using ActiveState perl, v.5.10.0 built for
> MSWin32-x64-multi-thread, binary build 1004--same build.

Thanks for confirming. (Sorry if I'm asking you for stuff that you've 
already provided :-)

> 3) (Btw, the compiler I have is the ideal compiler to be using with x64
> ActivePerl, and it *was* freely available from MS. Unfortunately, it no
> longer seems to be available - all links now lead to the VC 2008 version.
> Typical bloody MicroSoft.)
>
> Is this it?
>
> http://www.microsoft.com/downloads/details.aspx?familyid=EB4EBE2D-33C0-4A47-9DD4-B9A6D7BD44DA&displaylang=en

No - I don't think that's quite the same thing. For the exact same thing 
that was used to build your perl, you need to go to:
http://www.microsoft.com/downloads/details.aspx?familyid=0BAF2B35-C656-4969-ACE8-E4C0C0716ADB&displaylang=en
and click on the "continue" link. (All other links lead to the 2008 
version.) If you go to the right place, it *is* available after all.

> Here's a prospectively stupid question: if I have SDK v7, Visual Studio 
> 2008 x64,
> and VC 2005 redistributable x64 all installed, how do I know which 
> compiler
> is being used at any given time?
>

Do you currently run SetEnv.cmd to set up the SDK environment ? If so, then 
to run VC 2005, you would instead run the vcvars64.bat that comes with VC 
2005. And to run the SDK 2003, you would run the SetEnv.cmd that comes with 
that compiler. (The SDK 2003 will install to a different location than SDK 
2008 - so they can both exist on the same machine, and you control which one 
you use by selecting which SetEnv.cmd you run.)

If, however, your environment is set to permanently invoke SDK 2008, then 
you'll also have to change that environment - just so that you can control 
things properly by running the appropriate SetEnv.cmd.

Using the SDK 2003 is the "correct" fix - and had I have known that the SDK 
2003 was still available I would have suggested that straight off.

How do you feel using it instead ? It will save you (and others) a lot of 
grief - you'll have to reinstate 'bufferoverflowU.lib' in those 2 places in 
Config_heavy.pl, of course. I'm actually not sure that there *is* a fix to 
the primitive.t failure (short of using the SDK 2003 compiler). I think 
there's probably something that can be done with the callext.t problem - but 
I haven't yet worked out what it is.

Another "correct" fix would be to build your own perl with the SDK 2008 
compiler. That's a bit more work - and I'm not even sure that perl builds 
readily using the SDK 2008 compiler.

Cheers,
Rob


_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl

Reply via email to