cygwin, perl, wine, rebase, and ReBaseImage()

Dan Kegel dank at kegel.com
Fri Jan 22 15:08:44 CST 2010


While building chromium with visual c++ 2005 on wine,
step 'webcore_bindings_sources' tries to run
WebCore/bindings/scripts/generate-bindings.pl,
and sometimes it fails with

     13 [main] perl 29
C:\chromium\src\third_party\cygwin\bin\perl.exe: *** fatal error -
unable to remap
C:\chromium\src\third_party\cygwin\lib\perl5\5.10\i686-cygwin\auto\List\Util\Util.dll
to same address as parent(0x1350000) != 0x52760000^M
     14 [main] perl 74 fork: child 29 - died waiting for dll loading, errno 11^M

http://www.tishler.net/jason/software/rebase/rebase-2.2.README
indicates that cygwin's fork() relies on everything mapping
to the same address in the child.  (Gulp.)

This is an occasional problem even on Windows; the usual
advice is to run cygwin's rebaseall (carefully).  Sure enough, running
  wine c:\\cygwin\\bin\ash c:\\cygwin\\bin\\rebaseall
seems to have solved the problem.  Or maybe I just got lucky.

Cygwin's rebase command has its own implementation
of ReBaseImage(), so it doesn't matter that Wine's is a stub.
(Gee, maybe we should ask Ralf sometime if he's willing to relicense
it from gpl.
We'd have to translate it from C++ to C, too.)
- Dan



More information about the wine-devel mailing list