Web lists-archives.com

perl-Win32-API package problem


  I have a small Perl program that utilize module
Win32::API::Callback. This module works properly if I downloaded this
module from CPAN and compile by myself. There occurs a problem if I
get it from binary package perl-Win32-API downloaded by Cygwin setup
program. I then tried to figure this problem out by downloading source
module and compile by myself. I found a simple flow to duplicate the
fail with the following sequence.

----- Cut here -----
% cd /usr/src/perl-Win32-API-0.84-1.src
% cygport perl-Win32-API.cygport prep compile
% cd perl-Win32-API-0.84-1.x86_64/build/
% mv API_test64.dll API_test64.dll.lnk; cp API_test64.dll.lnk API_test64.dll
% mv rtc64.dll rtc64.dll.lnk; cp rtc64.dll.lnk rtc64.dll
% cd Callback
% make test
    (Failed test 'callback function works' at t/02_Callback.t line 58.)
% touch Callback.c
% make
% make test
    (All tests passed)
----- Cut here -----

  The two lines of commands "mv xxxx; cp xxx" are to dereference the
symbolic links of testing-needed dll files because
Win32::API::LoadLibrary() seems not be able to resolve Cygwin symbolic
  Two "make test" commands are shown above. The first test fails at
02_Callback.t line 75. After fail, a force recompile of the
Callback.dll module is done by touch and make. Doing "make test"
again, this time all test items passed.

  By checking the gcc compile option, I found there is a gcc option
"-fno-stack-protector" provided when I compile this module by myself,
while the option is removed when I compile with cygport. If I try
manually compiling without this option, the same problem occurs.

The host system is Windows7. Cygwin dll is 64bit version 2.10.0-1.
wish it can be solved soon in next package release.

<div id="DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2"><br /> <table
style="border-top: 1px solid #D3D4DE;">
      <td style="width: 55px; padding-top: 18px;"><a
alt="" width="46" height="29" style="width: 46px; height: 29px;"
		<td style="width: 470px; padding-top: 17px; color: #41424e;
font-size: 13px; font-family: Arial, Helvetica, sans-serif;
line-height: 18px;">不含病毒。<a
target="_blank" style="color: #4453ea;">www.avast.com</a> 		</td>
<a href="#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2" width="1" height="1"></a></div>

Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple