setup: how to handle circular dependencies?

Charles Wilson
Fri Sep 16 17:09:00 GMT 2005

Gerrit P. Haase wrote:
> I must call setup twice to completely uninstall gcc or to downgrade gcc.

Gcc is not the only case.  My boss wanted me to clean cygwin off of his 
computer, so as a lark I tried to use setup to do it.

I had to run setup about 50 times, because of all the circular 
dependencies.  Next time, I'll just blow away the tree, clean up the 
Start Menu, clean out the registry entries, and uninstall the services 
manually. (*)

However, I'm not sure there's a "nice" way to fix this without breaking 
some other aspect of the dependency logic.

(*) Hmm.  This is a pretty complex operation.  Maybe we should have an 
"uninstall cygwin completely" application?  Or at least a FAQ listing 
these steps?  My guess:

    from a bash window:
    cygrunsrv -L
    foreach entry: cygrunsrv -E X; cygrunsrv -R X
    close window.

    using setup, uninstall X-start-menu-icons, if installed.
    ? how to programmatically remove the non-X cygwin start menu stuff ?

    using Windows Explorer, delete entire cygwin root folder

    Still have to manually remove cygwin keys in registry -- both HKLM 
and in HKCU.



More information about the Cygwin-apps mailing list