This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Local Package Installation Difficulties


Hi Cygwin-ers,

First let me say Cygwin is great.  ("Oh no," you think.  "Another rant crudely
self-justified by a thin, introductory compliment.")  I promise, I've tried to
make this email rant-less and useful to the cygwin community.  Cygwin makes my
Windows life bearable, even enjoyable.  It is an excellent compatibility layer.
And I've never had the least problem with Cygwin, until now.

I just had a difficult time installing Cygwin on a machine without external
network access---so I was installing Cygwin from a local package list.  I don't
have any more cygwin problems now, but I hope that by describing the problems I
ran into and what I think _should have happened_, I can help all future users of
cygwin.

At first I just copied the "packages" dir from an existing Cygwin installation
onto the computer, and installed some things.  Immediately certain programs,
notably bash, started failing during installation, saying that certain dlls were
not installed.  Fortunately, this problem was easy to solve, as I found numerous
such references on the mailing list.  All I had to do was install a few
libraries (libintl, libiconv, etc.), which involved downloading them from a
mirror, and re-copying the "packages" dir.  I was puzzled, though, since those
packages were installed on the machine from which I had copied the "packages"
directory.  Why hadn't they been copied over?

Well, they _had_ been copied over---the problem was that I had several mirrors
in my "packages" directory, and Cygwin apparently chose the wrong one, as the
missing packages were available from a different mirror.  I eventually deleted
all the mirrors except the one I wanted, to make sure setup.exe chose that one.
What should have happened is what already happens when you choose to install
from the internet: the packages mirror you choose for a local install _ought to
be explicit_.  You should have to choose it, like you choose a remote mirror.

After I fixed this problem (there were no other errors reported by setup.exe) I
ran into weird behavior with certain commands: they just wouldn't do
... anything.  For example,

   $ ssh <host>
   $
   $ git-init
   $
   $ scp
   [normal scp message]

So certain problems worked (scp) but others did (apparently) nothing.  After
taking a look at setup.log.full, I figured out that post-install scripts for the
offending programs were hard-failing.  In git's case, for example, the command
'cmp' couldn't be found (it is provided by diffutils).  This leads me to my
second problem.

Why doesn't Cygwin _yell loudly_ at me about missing dependencies?  Before
everything was working, I had to run setup.exe a bunch of times to install
missing dependencies and then reinstall all packages (to make sure dependents
were reinstalled and postinstall scripts re-run).  I had to manually figure out
from setup.log.full that I needed texinfo, sed, binutils, and several other
packages.

I assume that for each package knows nominally which other packages it
depends on---as soon as I chose to install git and diffutils wasn't
available, cygwin should have said:

   You chose to install git but one of its dependencies, diffutils (any
   version), has not been found!  git probably won't work!  (To continue
   anyway, click "Continue Anyway").

Or something.  Is this not possible or inadvisable for some technical reason,
or has it simply not been done?

Anyway, I really do appreciate cygwin, despite this experience.  Everything
seems to be working famously now.  Thanks again for cygwin.

                              Denis


--
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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]