jimmyjimmy / cyg-apt

Automatically exported from code.google.com/p/cyg-apt
0 stars 0 forks source link

unable to remap cygbz2-1.dll error #8

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
{{{
$ cyg-apt update
cyg-apt: downloading: ftp://mirrors.kernel.org/sourceware/cygwin/setup-2.bz2
cyg-apt: downloading: ftp://mirrors.kernel.org/sourceware/cygwin/setup-.ini.sig

cyg-apt: ftp://mirrors.kernel.org/sourceware/cygwin/setup-2.bz2 not signed
by Cygwin's public key. Use -X to ignore sigatures. Exiting.

$ cyg-apt update -X

$ cyg-apt new
cyg-apt: downloading: ftp://mirrors.kernel.org/sourceware/cygwin/setup-2.bz2
cyg-apt: downloading:
ftp://mirrors.kernel.org/sourceware/cygwin/setup-2.ini.sig

      1 [main] python 2620 C:\cygwin\bin\python.exe: *** fatal error -
unable to remap C:\cygwin\bin\cygbz2-1.dll to same address as parent:
0x420000 != 0x450000
}}}

..after which `ctrl-c` and `ctrl-break` have no effect. The same error
occurs with any command which wants to unpack an archive.

{{{
$ uname -a
CYGWIN_NT-6.1-WOW64 localhost 1.7.1(0.218/5/3) 2009-12-07 11:48 i686 Cygwin
}}}

Original issue reported on code.google.com by map...@gmail.com on 16 Mar 2010 at 7:56

GoogleCodeExporter commented 9 years ago
1. Exit all Bash shells
2. Launch C:\Cygwin\bin\ash as an Administrator
3. Run /usr/bin/rebaseall

Try again.

Original comment by ag%theri...@gtempaccount.com on 28 Mar 2010 at 6:55

GoogleCodeExporter commented 9 years ago
Thanks for the suggestion. It doesn't work for me though:
{{{
$ rebaseall
rebaseall: '/c/Users/myname/AppData/Local/Temp' is not writable
}}}

Setting TEMP to another directory before running rebaseall yields the same 
error for
the new directory. I get the same results starting ash from a) a normal command
prompt, b) an elevated command prompt, c) selecting ash.exe in windows explorer>
r-click > run as administrator 

Original comment by map...@gmail.com on 30 Mar 2010 at 5:30

GoogleCodeExporter commented 9 years ago
I must have made a typo in one of my earlier tests, this is what finally worked:

Start > Command Prompt
{{{
  mkdir d:\temp
  set temp=d:\temp
  set tmp=d:\temp
  cd c:\cygwin\bin
  ash
    rebaseall -v
}}}

Original comment by map...@gmail.com on 30 Mar 2010 at 5:56

GoogleCodeExporter commented 9 years ago
I for the life of me can't get this to work. I've tried every combination of 
ash, dash command prompt, start-run, right-click and run as admin. and it just 
does not work.

also maphew, you said ash -> rebaseall -v. but I have to do a /bin/rebaseall -v 
(only to get the same error! *$*%#)

Original comment by patelab on 2 Aug 2010 at 3:52

GoogleCodeExporter commented 9 years ago
I have not tried this package but I was experiencing the same issue with 
rebaseall.  I was able to fix it by opening CYGINSTALLDIR/bin/rebaseall in a 
text editor and changing  line 83 to from:

TmpDir="${TMP:-${TEMP:-/tmp}}"

to

# TmpDir="${TMP:-${TEMP:-/tmp}}"
TmpDir="/tmp"

Hope this helps someone.

Original comment by davidcroda on 1 Sep 2010 at 10:51

GoogleCodeExporter commented 9 years ago
Thanks David, that fixed my issue.

Original comment by pedr...@gmail.com on 26 Jan 2011 at 9:25

GoogleCodeExporter commented 9 years ago
In case even Davids comment doesn't solve your problem as was the case for me 
you can try this:
create a temp folder as in comment 3 (it can be on the c drive or whatever for 
our purposes lets assume it is), open cygwin and chmod 777 that folder:

chmod 777 /cygdrive/c/temp

Close cygwin, run cmd execute these commands:

  set temp=c:\temp
  set tmp=c:\temp
  cd c:\cygwin\bin
  ash

  $/bin/rebaseall

Hopefully it will now work!

Original comment by loarfatr...@gmail.com on 28 Jan 2011 at 6:19

GoogleCodeExporter commented 9 years ago
I did all the things and my temp dir problem was solved but still I am unable 
to make it work. Now I am getting the following message
$ /bin/rebaseall
: not foundall: 2:
: not foundall: 18:
/bin/rebaseall: 21: basename: not found
: not foundall: 28:
: not foundall: 31: {
 [-b BaseAddress] [-o Offset] [-s DllSuffix] [-T FileList | -] [-v]

Anyone know the fix. I am realyy frustrated

Original comment by shobhitp...@gmail.com on 9 Feb 2011 at 11:17

GoogleCodeExporter commented 9 years ago
@ Comment 8:

I had exactly the same problem.  Since I had cygwin closed, I used WordPad to 
edit the file /bin/rebaseall (NotePad is -- in contrast to WordPad -- unusable 
since it displays the whole file in a single line).  However, I suspect that 
WordPad changed "LF" into "CRLF" on those lines that I edited, possibly 
resulting in exactly the message that you posted.

I finally made /bin/rebaseall running by restoring the original version and 
instead applying the following command:

chmod 777 /cygdrive/c/Users/<username>/AppData/Local/Temp

(where <username> is replaced by your login name).

Original comment by reute...@googlemail.com on 11 Feb 2011 at 12:32

GoogleCodeExporter commented 9 years ago
@ Comment 8 

After you change that file, open a cygwin prompt and do2unix it...

dos2unix /bin/rebaseall

then exit that prompt and try again

run ash.exe and cd /bin and ./rebaseall

Original comment by casey.du...@gmail.com on 14 Mar 2011 at 5:39

GoogleCodeExporter commented 9 years ago
I had the same problem on Win7 x64 with Cygwin 1.7.9. The solution offered by 
"Comment 7" fixed the issue. Thanks!

Original comment by shrinare...@gmail.com on 17 Aug 2011 at 11:21

GoogleCodeExporter commented 9 years ago
After editing the script and dir permissiosn as indicated, rebaseall can now 
access the temp dir, but somehow the file 'rebase.lst' is missing from the temp 
dir:

/usr/lib/zsh/4.3.12/zsh/zle.dll
/usr/lib/zsh/4.3.12/zsh/zleparameter.dll
/usr/lib/zsh/4.3.12/zsh/zprof.dll
/usr/lib/zsh/4.3.12/zsh/zpty.dll
/usr/lib/zsh/4.3.12/zsh/zselect.dll
/usr/lib/zsh/4.3.12/zsh/zutil.dll
cannot read /cygdrive/c/Users/JF/AppData/Local/Temp/rebase.lst

Any suggestion?

Thanks!
JF

Original comment by jrom...@gmail.com on 10 Sep 2011 at 6:49

GoogleCodeExporter commented 9 years ago

Thanks for this info.
As I expect to use this quite a bit, I wrote a batch file (ouch!).
Note that you may need to modify those 'IF' statements used to detect the drive 
where
CYGWIN is installed according to the location of your cygwin (I usually use 
C:\cygwin but have recently copied a cygwin installation between machines, 
putting it at E:\XP\cygwin).

NOTE: It requires to have CYGWIN set in your environment.

Original comment by mjbrigh...@gmail.com on 18 Nov 2011 at 6:57

Attachments:

GoogleCodeExporter commented 9 years ago
re: http://code.google.com/p/cyg-apt/issues/detail?id=8#c13 - Determining the 
drive letter can be done in one step using variable substring syntax, replacing 
lines 17 thru 33:

   set drive=%CYGWIN%:0,2%

but even that can be avoided by using 'pushd' or 'cd /d' to change drive and 
path at once, replacing lines 17 thru 39.

   :: these are functionally equivalent (in this context)
   pushd %cygwin%\bin
   cd /d %cygwin%\bin

References:

http://ss64.com/nt/syntax-substring.html
http://ss64.com/nt/cd.html
http://ss64.com/nt/pushd.html - pushd is especially useful, though not in this 
context, because it can be used with UNC paths (\\server\share\path)

Original comment by map...@gmail.com on 18 Nov 2011 at 7:58

GoogleCodeExporter commented 9 years ago

Great, thanks for the tip !
Whilst I don't really want to invest in "DOS" batch skills, this would have 
saved me some time this morning.
I'll save away those links ...

Original comment by mjbrigh...@gmail.com on 18 Nov 2011 at 8:33

GoogleCodeExporter commented 9 years ago
Hi, 
I tried creating temp folder and running it as per comment 9, but then i get 
the following thing
grep:/proc/5712/exename :no such file or directory 
but there is rebaseall file in my bin folder. can anyone pls help me with this

Original comment by shree...@gmail.com on 31 Mar 2012 at 4:48

GoogleCodeExporter commented 9 years ago
About to stop cygserver
The CYGWIN cygserver service is not started.

More help is available by typing NET HELPMSG 3521.

Checking Cygwin drive letter:

Drive letter detected as 'c'
11/14/2012  10:54 PM             8,069 gtkdoc-rebase
07/12/2012  04:53 PM             2,496 perlrebase
01/16/2013  12:36 PM           507,406 rebase.exe
04/02/2013  04:40 PM             5,757 rebaseall
A subdirectory or file c:\tmp already exists.
Calling rebaseall via 'ash' shell:
rebaseall: only ash or dash processes are allowed during rebasing
    Exit all Cygwin processes and stop all Cygwin services.
    Execute ash (or dash) from Start/Run... or a cmd or command window.
    Execute '/bin/rebaseall' from ash (or dash).
Press any key to continue . . .

Original comment by jmall...@bangordailynews.com on 2 Apr 2013 at 8:51

GoogleCodeExporter commented 9 years ago
thinks it solved by comment 7

Original comment by sr.sea...@gmail.com on 13 May 2013 at 4:28