----- Original Message ----- 
From: "Jan Dubois" <j...@activestate.com>

>> It's a bug in the test script. With some help from
>> http://www.perlmonks.org/index.pl?node_id=762762 , I finally found that 
>> the
>> executable fails to build because bufferoverflowU.lib is not linked in.
>
> This is only a problem when you are using the VC compiler from the Windows
> 2003 R2 Platform SDK.  It is a variant of VS2005, but links against 
> MSVCRT.dll
> instead of MSVCR80.dll.  MSVCRT.dll does not contain the code necessary 
> for
> the /GS buffer overrun protection new to VS2005, so it has to be linked 
> into
> the generated executables statically.
>
> I guess you probably already knew this, but wanted to state it explicitly
> for the list archives.

Yep (well ... I knew *some* of it :-)
Thanks for attending to my omission.

I've just submitted a bug report to 
https://rt.cpan.org/Ticket/Display.html?id=45882 containing this patch, 
which I think addresses the problem in a portable way (by specifying a link 
to bufferoverflowU.lib iff bufferoverflowU.lib is listed in $Config{libs}):

####################################
--- 00_ptr_cast.t_orig Sat May 9 09:51:39 2009
+++ 00_ptr_cast.t Sat May 9 10:31:59 2009
@@ -17,8 +17,12 @@
my $err = gensym();

my @extraargs;
-push(@extraargs, '/nologo') if $^O eq 'MSWin32' && $Config{cc} eq 'cl';
-my $cmd = "$Config{cc} -o $output $input " . join(' ', @extraargs);
+my $cmd;
+if($^O eq 'MSWin32' && $Config{cc} eq 'cl') {
+ push(@extraargs, '/nologo ' . $Config{libs});
+ $cmd = "$Config{cc} /Fe$output $input " . join(' ', @extraargs);
+}
+else {$cmd = "$Config{cc} -o $output $input " . join(' ', @extraargs)}
diag( "compiling test program with: $cmd" );
my $pid = open3(undef, $out, $err, $cmd);
waitpid $pid, 0;

####################################

It also takes care of the failure with test 2 (that I mentioned in my 
previous post). With that patch in place, all of the Net-SSLeay-1.35 tests 
now pass for me.

Cheers,
Rob 

_______________________________________________
Perl-Win32-Users mailing list
Perl-Win32-Users@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to