delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2005/07/07/21:11:27

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
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
Message-ID: <42CDD3B8.69B6AB98@dessent.net>
Date: Thu, 07 Jul 2005 18:15:36 -0700
From: Brian Dessent <brian AT dessent DOT net>
MIME-Version: 1.0
To: Cygwin List <cygwin AT cygwin DOT com>
Subject: Re: Perl Win32::Shortcut screws up fork
References: <7231C15EAC2F164CA6DC326D97493C8BA1C3FA AT exchange35 DOT fed DOT cclrc DOT ac DOT uk>
X-Spam-Report: -5.9/5.0 ---- Start SpamAssassin results * -3.3 ALL_TRUSTED Did not pass through any untrusted hosts * -2.6 BAYES_00 BODY: Bayesian spam probability is 0 to 1% * [score: 0.0000] * 0.0 AWL AWL: From: address is in the auto white-list ---- End SpamAssassin results
X-IsSubscribed: yes
Reply-To: cygwin AT cygwin DOT com

"Adye, TJ (Tim)" wrote:

> % rebaseall
> ReBaseImage (/usr/bin/cygiconv-2.dll) failed with last error = 6
> 
> cygiconv-2.dll is used by bash, but rebaseall is a bash script. What can
> I do?

This is a problem with the new bash version 3.0, which is dynamically
linked to the readline, libiconv, and ncurses DLLs:

  C:\cygwin\bin\cygwin1.dll
    C:\WINXP\System32\ADVAPI32.DLL
      C:\WINXP\System32\ntdll.dll
      C:\WINXP\System32\KERNEL32.dll
      C:\WINXP\System32\RPCRT4.dll
  C:\cygwin\bin\cygintl-3.dll
    C:\cygwin\bin\cygiconv-2.dll
  C:\cygwin\bin\cygreadline6.dll
    C:\cygwin\bin\cygncurses-8.dll
    C:\WINXP\System32\USER32.dll
      C:\WINXP\System32\GDI32.dll

The prior version of bash, 2.05b-17, is statically linked:

  C:\cygwin\bin\cygwin1.dll
    C:\WINXP\System32\ADVAPI32.DLL
      C:\WINXP\System32\ntdll.dll
      C:\WINXP\System32\KERNEL32.dll
      C:\WINXP\System32\RPCRT4.dll
  C:\WINXP\System32\USER32.dll
    C:\WINXP\System32\GDI32.dll

This presents a somewhat serious problem for the rebaseall script.  It
can be modified to exclude cyg{intl-3,iconv-2,readline6,ncurses-8}.dll
but that is not a very good solution, because it means they will not be
rebased.  These DLLs unfortunately are used by lots of programs and I
fear not rebasing them is a poor solution.

I think we will require a statically linked bash, or some kind of
trickery in the rebaseall script.  One potential way around this might
be for it to output a .cmd file (or .bat under 9x, grrr) and then exec()
$COMSPEC to run the commands.  This would have the advantage of not
requiring any Cygwin DLLs in use during the rebase, but it sounds more
error prone and complicated.

Brian

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

- Raw text -


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