delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2012/03/03/11:04:41

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE,TW_YG
X-Spam-Check-By: sourceware.org
X-Authority-Analysis: v=2.0 cv=d9t3OGfE c=1 sm=0 a=I35YE/31jyzKHWIan582YQ==:17 a=gq4V9bB94NwA:10 a=LcwgBNocGMwA:10 a=nZcEhgTK-QsA:10 a=kj9zAlcOel0A:10 a=5ANeptKY1dxaG44NepcA:9 a=VYW36Qm6Ghwplakqt2gA:7 a=CjuIK1q_8ugA:10 a=I35YE/31jyzKHWIan582YQ==:117
From: Scott <listS+cygwin AT niss DOT com>
Message-ID: <8F.5C.26054.DF0425F4@hrndva-omtalb.mail.rr.com>
To: cygwin AT cygwin DOT com
Subject: cygwin 1.7.11-1 broke perl using dynamic loading
MIME-Version: 1.0
Date: Sat, 03 Mar 2012 10:04:13 -0600
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

  With the introduction of cygwin 1.7.11-1, perl scripts that use
  dynamic loading fail with dll errors when another program is exec'ed.

  The host OS is windows 7 professional, 32-bit.  The error message
  looks like the familiar perl problem fixed by rebaseall, but this
  time, that remedy did not fix the problem.

  A perl one-liner is enough to demonstrate:

	win7% perl -MParams::Util -e 'system q{date}'
	      3 [main] perl 3428 child_copy: loaded dll data write copy failed, 0x721D6000..0x721D635C, done 0, windows pid 5360, Win32 error 487

  Here is the detailed test case that demonstrates the problem:

	win7% cat Util.pm
	#
	# Test case for Cygwin + perl DynaLoader problem.  Dynamic loading in
	# perl works with cygwin 1.7.10-1 and fails with cygwin 1.7.11-1
	#
	# The code looks odd, but that's because it is the simplest reduction of
	# real code that illustrates the problem.
	#
	package Params::Util;
	require List::Util;
	require DynaLoader;
	use vars qw{@ISA};
	@ISA = qw{ DynaLoader };
	bootstrap Params::Util 1.01;
	system q{date};
	1;

	win7% perl Util.pm
	      7 [main] perl 5180 child_copy: loaded dll data write copy failed, 0x72206000..0x7220635C, done 0, windows pid 3520, Win32 error 487
	5033576 [main] perl 5180 child_copy: loaded dll data write copy failed, 0x72206000..0x7220635C, done 0, windows pid 3520, Win32 error 487
	10066998 [main] perl 5180 child_copy: loaded dll data write copy failed, 0x72206000..0x7220635C, done 0, windows pid 3520, Win32 error 487

	win7% cygcheck -c cygwin perl
	Cygwin Package Information
	Package              Version        Status
	cygwin               1.7.11-1       OK
	perl                 5.10.1-5       OK

	win7% perl -MParams::Util -e 'system q{date}'
	      3 [main] perl 3428 child_copy: loaded dll data write copy failed, 0x721D6000..0x721D635C, done 0, windows pid 5360, Win32 error 487



  And here is the test case that shows it used to work:

	win7% cat Util.pm
	#
	# Test case for Cygwin + perl DynaLoader problem.  Dynamic loading in
	# perl works with cygwin 1.7.10-1 and fails with cygwin 1.7.11-1
	#
	# The code looks odd, but that's because it is the simplest reduction of
	# real code that illustrates the problem.
	#
	package Params::Util;
	require List::Util;
	require DynaLoader;
	use vars qw{@ISA};
	@ISA = qw{ DynaLoader };
	bootstrap Params::Util 1.01;
	system q{date};
	1;

	win7% perl Util.pm
	Sat, Mar 03, 2012 09:40:12

	win7% cygcheck -c cygwin perl
	Cygwin Package Information
	Package              Version        Status
	cygwin               1.7.10-1       OK
	perl                 5.10.1-5       OK

	win7% perl -MParams::Util -e 'system q{date}'
	Sat, Mar 03, 2012 09:42:49

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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019