----- 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
