Sunday, 25 February 2018

windows 7 - Cygwin fatal error unable to remap.. What does it mean?


When running python in cygwin, I get the following error:


    0 [main] python 6140 C:\cygwin\bin\python.exe: *** fatal error - unable to remap \\?\C:\cygwin\lib\python2.6\lib-dynload\time.dll to same address as parent: 0x2B0000 != 0x360000
Stack trace:
Frame Function Args
00288E68 6102749B (00288E68, 00000000, 00000000, 00000000)
00289158 6102749B (61177B80, 00008000, 00000000, 61179977)
0028A188 61004AFB (611A136C, 6124112C, 002B0000, 00360000)
End of stack trace
0 [main] python 9048 fork: child 6140 - died waiting for dll loading, errno 11
abort: Resource temporarily unavailable

What does it mean, and what should I do to fix it?



Answer



You need to run the rebaseall command from the rebase package to fix the problem.



  1. Install the rebase package using the Cygwin setup.exe utility

  2. Close everything running that uses the cygwin1.dll

  3. Open a Cygwin shell

  4. Type rebaseall at the prompt


Rebasing is usually only required when installed packages are installed that modify libraries that are dynamically loaded. I'll admit a bad habit of always running rebaseall after installing or upgrading packages in a Cygwin install rather than waiting for that error you hit to show up.


As for why you got that error and how rebasing solves the problem, this post has this to say about it:



You have it backwards. Forking doesn't break the relocation. Relocation breaks forking. cygwin1.dll needs to have a very special memory layout to implement the fork semantics in Win32. If this memory layout is disrupted, fork breaks. Relocating cygwin1.dll disrupts the required memory layout. 'rebaseall' does its best to locate all Cygwin DLLs that it knows of into a layout that avoids collisions. This maintains the required memory layout so fork can do its job.



No comments:

Post a Comment

Where does Skype save my contact's avatars in Linux?

I'm using Skype on Linux. Where can I find images cached by skype of my contact's avatars? Answer I wanted to get those Skype avat...