235 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			235 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| @chapter Installation Instructions
 | |
| @section Contents
 | |
| 
 | |
| Unlike previous net releases such as B20.1 and earlier, there is no
 | |
| monolithic "full" or "usertools" installation.  Rather, you can pick and
 | |
| choose the packages you wish to install, and update them individually.
 | |
| 
 | |
| The following packages are available with the latest net release:
 | |
| 
 | |
| ash, bash, binutils, bison, byacc, bzip2, clear, common, cygwin,
 | |
| dejagnu, diff, expect, fileutils, findutils, flex, gawk, gcc, gdb,
 | |
| gperf, grep, groff, gzip, inetutils, less, libpng, login, m4, make, man,
 | |
| patch, sed, shellutils, tar, tcltk, termcap, texinfo, textutils, time,
 | |
| zlib
 | |
| 
 | |
| Full source code is available for all packages and tools.
 | |
| 
 | |
| There are a few different ways to install the Cygwin net release, and
 | |
| we'll try to cover them all here.  It is strongly recommended to use the
 | |
| automatic @code{setup.exe} program if you can.
 | |
| 
 | |
| @section Installation using the @code{setup.exe} program
 | |
| 
 | |
| @strong{IMPORTANT: If you run @code{setup.exe} on an existing Cygwin
 | |
| installation, Setup will overwrite the contents of mounted directories.
 | |
| There is no recovery from this.  If you are upgrading from an older
 | |
| version of Cygwin, you may wish to back up your current installation and
 | |
| unmount old mount points in order to isolate them.  Then you can
 | |
| re-install Cygwin in a new location with new mount points, if this is
 | |
| what you want.}
 | |
| 
 | |
| The @code{setup.exe} program is the recommended way to install Cygwin,
 | |
| but it is still a work in progress.  Expect features and functionality
 | |
| to change.  For this reason, it is a good idea to note the version and
 | |
| build time reported by @code{setup.exe} when you run it.  This will help
 | |
| diagnose problems, should you have any.  Check the cygwin mailing list
 | |
| for the latest news about @code{setup.exe}.
 | |
| 
 | |
| You have a few options when using @code{setup.exe}.  
 | |
| 
 | |
| The @code{setup.exe} program will prompt you for a "root" directory.
 | |
| The default is 'C:\cygwin', but you can change it.  (You are strongly
 | |
| urged @strong{not} to choose something like 'C:\'.)  It will contain the
 | |
| necessary files and directory structure, and will be mounted to '/' as
 | |
| part of the installation process.
 | |
| 
 | |
| After a new installation in the default location, your mount points will
 | |
| look something like this:
 | |
| 
 | |
| @example
 | |
| Device              Directory           Type         Flags
 | |
| C:\cygwin\bin       /usr/bin            user         binmode
 | |
| C:\cygwin\lib       /usr/lib            user         binmode
 | |
| C:\cygwin           /                   user         binmode
 | |
| @end example
 | |
| 
 | |
| Note that /bin and /usr/bin point to the same location, as do /lib and
 | |
| /usr/lib.  This is intentional, and you should not undo these mounts
 | |
| unless you @emph{really} know what you are doing.  Currently,
 | |
| @code{setup.exe} creates only binary mounts, but future versions will
 | |
| probably be more flexible.
 | |
| 
 | |
| You can let @code{setup.exe} download all the files for you on the fly.
 | |
| This is the 'internet' installation.  Or you can download all (or some)
 | |
| of the packages ahead of time, and instruct @code{setup.exe} to install
 | |
| Cygwin from those files.  This is the 'directory' installation.  You
 | |
| must use this method if you want to install only a subset of the
 | |
| available packages.
 | |
| 
 | |
| Note that you cannot combine methods.  If you use the directory
 | |
| installation, @code{setup.exe} will install @strong{only} the packages
 | |
| it finds in the directory; it will not also be able to download packages
 | |
| from the internet in the same pass.  If you have not carefully chosen
 | |
| which packages to download, you may not end up with a working Cygwin
 | |
| installation.  You can, however, add and update packages later.  See
 | |
| below.
 | |
| 
 | |
| Whichever you choose, the first step is to open an ftp mirror site near
 | |
| you from @file{http://sourceware.cygnus.com/cygwin/mirrors.html}.  Then
 | |
| go to the 'latest' directory, download @code{setup.exe} and save that to
 | |
| an @strong{empty temporary directory}.  While you're there, download the
 | |
| README file and read it.  Then read it again.
 | |
| 
 | |
| Then proceed according to your choice below.
 | |
| 
 | |
| @subsection Internet installation with @code{setup.exe}
 | |
| 
 | |
| Shut down @strong{all cygwin applications} (including inetd, etc.).
 | |
| 
 | |
| Then, in a @strong{Windows command prompt} ("MS-DOS Prompt" in Windows
 | |
| 95/98), '@code{cd}' to the temporary directory and type
 | |
| '@code{setup.exe}'.
 | |
| 
 | |
| When prompted, specify the location of the root directory, or accept the
 | |
| default.
 | |
| 
 | |
| At the next prompt, choose to install from the Internet ('i').  This is
 | |
| the default.
 | |
| 
 | |
| Setup will connect to sourceware.cygnus.com to read a list of mirror
 | |
| sites.  Choose one from the list, or choose 'other' to supply your own.
 | |
| If you supply your own, you must provide a full URL, not just the ftp
 | |
| hostname.  Setup will then proceed to download and install all packages
 | |
| from the ftp site.  Of course this may take a while if you have a slow
 | |
| connection.
 | |
| 
 | |
| When finished, Setup will have created a "Cygnus Solutions" folder on
 | |
| your Start Menu, containing a shortcut to @code{cygwin.bat}, which
 | |
| invokes bash with various environment variables set correctly.  The
 | |
| "Uninstall Cygwin" shortcut, if present, is unlikely to do a proper
 | |
| job.  If you want to completely uninstall Cygwin, you will probably have
 | |
| to delete some things by hand.
 | |
| 
 | |
| Once setup is complete you may remove the temporary directory.  It will
 | |
| contain @code{setup.exe}, the downloaded @code{.tar.gz} files, and a
 | |
| setup log file, which is not needed, but may contain helpful diagnostics
 | |
| if your installation failed for some reason.
 | |
| 
 | |
| @subsection Directory installation with @code{setup.exe}
 | |
| 
 | |
| Before proceeding, you must download packages into the temporary
 | |
| directory containing @code{setup.exe}.  These are in subdirectories of
 | |
| 'latest' and end in .tar.gz and not in -src.tar.gz.  If there is more
 | |
| than one in a given directory, pick the one with the highest version
 | |
| number.  Put them together in the temporary directory containing
 | |
| @code{setup.exe}.  You may preserve the directory structure of 'latest',
 | |
| and include the -src.tar.gz files, without ill effect.
 | |
| 
 | |
| Whatever subset you think is appropriate, it @strong{must} contain the
 | |
| 'cygwin' package, or you will not end up with a working Cygwin
 | |
| installation.
 | |
| 
 | |
| When you have all the necessary tar files together with
 | |
| @code{setup.exe}, proceed as you would for an internet installation,
 | |
| except choose directory installation ('d') when prompted.  Setup will
 | |
| install all the tar files that it finds there.  Here are the gory
 | |
| details again:
 | |
| 
 | |
| Shut down @strong{all cygwin applications} (including inetd, etc.).
 | |
| 
 | |
| Then, in a @strong{Windows command prompt} ("MS-DOS Prompt" in Windows
 | |
| 95/98), '@code{cd}' to the temporary directory and type
 | |
| '@code{setup.exe}'.
 | |
| 
 | |
| When prompted, specify the location of the root directory, or accept the
 | |
| default.
 | |
| 
 | |
| At the next prompt, choose to install from the current directory ('d').
 | |
| This is @strong{not} the default.
 | |
| 
 | |
| When finished, Setup will have created a "Cygnus Solutions" folder on
 | |
| your Start Menu, containing a shortcut to @code{cygwin.bat}, which
 | |
| invokes bash with various environment variables set correctly.  The
 | |
| "Uninstall Cygwin" shortcut, if present, is unlikely to do a proper
 | |
| job.  If you want to completely uninstall Cygwin, you will probably have
 | |
| to delete some things by hand.
 | |
| 
 | |
| Once setup is complete you may remove the temporary directory.  It will
 | |
| contain @code{setup.exe}, the downloaded @code{.tar.gz} files, and a
 | |
| setup log file, which is not needed, but may contain helpful diagnostics
 | |
| if your installation failed for some reason.
 | |
| 
 | |
| @subsection Adding or updating packages
 | |
| 
 | |
| Later versions of @code{setup.exe} permit you to add and/or update
 | |
| packages to an existing cygwin installation.
 | |
| 
 | |
| @strong{You cannot use this method to update a B18, B19, B20, B20.1 or
 | |
| CD-ROM (1.0) installation of Cygwin.  You must have previously installed
 | |
| a net release of Cygwin 1.1.0 or greater, using @code{setup.exe}, before
 | |
| you can update packages with 'setup -u'.}
 | |
| 
 | |
| To update your installation, create an empty temporary directory, and
 | |
| download the latest version of @code{setup.exe} to it from a Cygwin
 | |
| mirror near you.
 | |
| 
 | |
| Then, in a @strong{Windows command prompt} ("MS-DOS Prompt" in Windows
 | |
| 95/98), '@code{cd}' to the temporary directory and type
 | |
| @example
 | |
| 	setup -u <pkg>
 | |
| @end example
 | |
| where "<pkg>" is the name of the package you wish to update, such as
 | |
| "cygwin" or "gdb" or "make" or ...
 | |
| 
 | |
| Specify the root directory as you did when you first installed Cygwin.
 | |
| This will update the package.  As with the initial installation, you can
 | |
| update from the internet ('i') or from the directory ('d').  The latter
 | |
| requires that you download the @code{.tar.gz} file of the package ahead
 | |
| of time, along with @code{setup.exe}.
 | |
| 
 | |
| If you are updating the package "cygwin", then you must close
 | |
| @strong{all} Cygwin applications (including @code{inetd}, for example),
 | |
| before running setup.
 | |
| 
 | |
| You can omit the '-u' option, which will force setup to install the
 | |
| latest package (from internet or directory), regardless of whether
 | |
| @code{setup.exe} believes it is necessary.  You @strong{must} omit '-u'
 | |
| if you are updating from a development snapshot, because development
 | |
| snapshots have their version numbers "bumped" to the next release
 | |
| number.  In this case, @code{setup.exe} will think your installation is
 | |
| already up-to-date.
 | |
| 
 | |
| Once setup is complete you may remove the temporary directory.  It will
 | |
| contain @code{setup.exe}, the downloaded @code{.tar.gz} files, and a
 | |
| setup log file, which is not needed, but may contain helpful diagnostics
 | |
| if your installation failed for some reason.
 | |
| 
 | |
| @subsection Problems running @code{setup.exe}
 | |
| 
 | |
| @subsubsection Error message: "Unable to retrieve the list of cygwin mirrors..."
 | |
| 
 | |
| This means that @code{setup.exe} could not make an http connection to
 | |
| @file{http://sourceware.cygnus.com/cygwin/mirrors.html}.  This is
 | |
| required for an internet ('i') install.  Either sourceware.cygnus.com was
 | |
| too busy, or there is a problem with your network.  Note that
 | |
| @code{setup.exe} has very limited proxy functionality for firewalls, and
 | |
| depends on IE4 or later being installed and configured properly.  If you
 | |
| cannot get the internet installation to work, just download the
 | |
| packages yourself and do a directory ('d') install.
 | |
| 
 | |
| @subsubsection System hangs when unpacking tar archives
 | |
| 
 | |
| Your anti-virus software is interfering with @code{setup.exe}.  You will
 | |
| have to disable it before running setup.  In that case, you will
 | |
| probably want to:
 | |
| @enumerate
 | |
| @item download all the .tar.gz files for the packages, along with @code{setup.exe}
 | |
| @item scan it all for viruses
 | |
| @item disable the anti-virus software
 | |
| @item perform a directory ('d') install
 | |
| @item re-enable the anti-virus software
 | |
| @item scan everything below your Cygwin root directory (@code{C:\cygwin} by default)
 | |
| @end enumerate
 | |
| 
 |