delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2007/04/18/12:41:48

X-Spam-Check-By: sourceware.org
Message-ID: <4624BA30.C20990AC@dessent.net>
Date: Tue, 17 Apr 2007 05:14:40 -0700
From: Brian Dessent <brian AT dessent DOT net>
X-Mailer: Mozilla 4.79 [en] (Windows NT 5.0; U)
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: Rebase issues with cygwin RMagick
References: <9eea11320704170431y42d3ebe8n3959644c01e167e9 AT mail DOT gmail DOT com>
X-IsSubscribed: yes
Reply-To: cygwin AT cygwin DOT com
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

Bjarne Christiansen wrote:

> I have created a simple rmagick  ruby script, which works fine, but
> when I get to get input from wxcocoadialog (a gui dialog) I run into
> the "good" old "unable to remap" issue. I'm usually able to fix these
> kind of issues by doing a rebaseall, but not this time :-( I have also
> tried to reinstall cygwin, imagemagick and rmagick, but nothing seems
> to help. The script worked fine a couple of weeks ago, so I'm assuming
> that it's caused by a recent cygwin update(?)

rebaseall only knows about DLLs that are installed as packages through
setup.exe.  rmagick is not a package, and thus its DLL is not being
rebased.  You need to use the -T option to rebaseall to supply a file
containing a list of all extra DLLs that should be rebased.

> It seems that the --enable-auto-image-base flag has been set for ruby
> and imagemagick...

That would be the preferred solution.  However it's clear from your
error message below that rmagick.so was not compiled with
--enable-auto-image-base, so when you build that you need to set the
LDFLAGS or CFLAGS (or however the build system does it) so that it is
used when linking.  In order for auto image base system to work, all
DLLs have to be compiled with the option, not just some.

>     8374 [main] ruby 3516 C:\cygwin\bin\ruby.exe: *** fatal error -
> unable to remap C:\cygwin\lib\ruby\site_ruby\1
> .8\i386-cygwin\RMagick.so to same address as parent(0x3A000) != 0x1C980000
>       5 [main] ruby 5524 fork: child 3516 - died waiting for dll
> loading, errno 11
> 1192542 [main] ruby 884 C:\cygwin\bin\ruby.exe: *** fatal error -
> unable to remap
> C:\cygwin\lib\ruby\site_ruby\1.8\i386-cygwin\RMagick.so to same
> address as parent(0x3A000) != 0x1C980000

0x3a000 implies that this DLL was not given an imagebase (or it was
given some default value like 0x10000000) which means it's going to be
relocated and thus fail on fork.

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