X-Spam-Check-By: sourceware.org Date: Thu, 9 Mar 2006 09:06:28 -0500 (EST) From: Igor Peshansky Reply-To: cygwin AT cygwin DOT com To: Timothy King cc: Larrie Carr , cygwin AT cygwin DOT com Subject: Re: Problems after upgrading to 1.5.19-4 In-Reply-To: <1dbcac530603082227s29ed6b1ek6c37dc60643384e6@mail.gmail.com> Message-ID: References: <20060309052204 DOT 3520 DOT qmail AT web30801 DOT mail DOT mud DOT yahoo DOT com> <052001c6433c$95f9c270$0201a8c0 AT homelarrie> <1dbcac530603082227s29ed6b1ek6c37dc60643384e6 AT mail DOT gmail DOT com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On Wed, 8 Mar 2006, Timothy King wrote: > On 3/8/06, Larrie Carr wrote: > > From: "Timothy King" > > > Last night, I grabbed an additional package using setup.exe. It also > > > downloaded and installed the latest cygwin1.dll (1.5.19-4) and core > > > utilities. I had not updated since early January. While it was running > > > the post-install script, I received serveral errors along the lines of > > > "... could not be found in cygwin1.dll". I rebooted, and now when I run > > > the bash shell, it drops me in /usr/bin and I have no Cygwin directories > > > in my path (/bin, /usr/bin). Also, my term colors are now messed up. > > > > > > I did a diff on the /etc and /home directories which I had backed up, but > > > there were no differences in the config files. I also did not find any > > > other cygwin1.dll's on my system. It is interesting to note I have the > > > cygwin sshd running on that machine, and when I ssh into it I have no > > > problems with paths or term colors. > > > > > > This is running on Windows XP Pro. I know my way around Unix but I know > > > little about how the Cygwin shell runs on windows. I tried adding the > > > Cygwin paths in my .bashrc, but now it barfs on the spaces in the Windows > > > directory names. > > > > > > Any help would be appreciated. > > > > > > Tim > > > >[snip] > > If you attempt to updated cygwin when cygwin (bash) is running, the > > cygwin.dll is locked. So you can get updates to programs like rm that need > > that new cygwin.dll so everytime you run rm, you get this "missing blah > > ..could nto be found in cygwin1.dll". > > > > But you are hooped because setup.exe assumes that everything works > > (like rm) so if you try to reinstall with setup.exe, you are stuck. > > > > My fix was to exit out of all cygwin programs and in cmd, go looking > > for the cygwin1.dll (assuming c: drive) > > > > dir c:\cygwin\bin\cygwin1.dll* > > > > you should find a cygwin1.dll and a cygwin1.dll.new - move the > > cygwin1.dll to cygwin1.dll.old and cygwin1.dll.new to cygwin1.dll. > > If you see any other .new files, you might want to do the same. > > > > Then I reinstalled using setup.exe all the cygwin tools again (core, > > etc) so that everything could run to completion successfully. > > > > If you don't find the cygwin1.dll.new file, then my problem was not > > your problem (MPNYP). > > Thanks for the response, but it doesn't seem to be the same problem. > I do not have any .new files in c:\cygwin\bin. I've tried > re-downloading and re-installing the the core (making sure I'm not > using the shell at the same time), but still have the problem. Setup actually does a bit more than leave .new files around -- it also schedules the original files to be replaced by .new files on reboot. If you have since rebooted, Windows would have done the job of renaming the .new files for you. However, this still doesn't fix the problem of the postinstall procedure being hosed (since all postinstall scripts ran with the old cygwin1.dll and perhaps other DLLs). You can look at the tail end of /var/log/setup.log to see what packages it updated, then make sure you don't have any Cygwin processes running, run setup again and reinstall those packages. This should properly re-run the postinstall scripts. HTH, Igor P.S. A note for the archives: now that setup has a proper mechanism to detect failed postinstall scripts, along with scheduling replace-on-reboot for the files in-use, we could (should) also create a batch file in RunOnce after reboot to re-run the failed postinstall scripts... If someone wants to tackle this before I get to it (and it'll be a while for me), feel free. -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ pechtcha AT cs DOT nyu DOT edu | igor AT watson DOT ibm DOT com ZZZzz /,`.-'`' -. ;-;;,_ Igor Peshansky, Ph.D. (name changed!) |,4- ) )-,_. ,\ ( `'-' old name: Igor Pechtchanski '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! "Las! je suis sot... -Mais non, tu ne l'es pas, puisque tu t'en rends compte." "But no -- you are no fool; you call yourself a fool, there's proof enough in that!" -- Rostand, "Cyrano de Bergerac" -- 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/