GNU Info

Info Node: (cvsbook.info)Getting And Building CVS Under Unix

(cvsbook.info)Getting And Building CVS Under Unix


Next: Getting And Installing CVS Under Windows Up: Getting And Installing CVS
Enter node , (file) or (file)node

Getting And Building CVS Under Unix
-----------------------------------

As of this writing, there are two canonical sites from which you can
download CVS.  One is the Free Software Foundation's FTP site,
`ftp://ftp.gnu.org/gnu/cvs/', which offers CVS as an official GNU tool.
The other is Cyclic Software's download site.  Cyclic Software is, if
not the maintainer of CVS, then the "maintainer of the maintainers", by
providing a repository server and download access for users and
developers.  They distribute releases from
`http://download.cyclic.com/pub/'.

Either location is fine.  In the following example, I use Cyclic
Software's site.  If you point your FTP client (probably your Web
browser) there, you'll see a list of directories, something like this:

     Index of /pub
         cvs-1.10.5/            18-Feb-99 21:36      -
         cvs-1.10.6/            17-May-99 10:34      -
         cvs-1.10/              09-Dec-98 17:26      -
         macintosh/             23-Feb-99 00:53      -
         os2/                   09-Dec-98 17:26      -
         packages/              09-Dec-98 17:26      -
         rcs/                   09-Dec-98 17:26      -
         tkcvs/                 09-Dec-98 17:26      -
         training/              09-Dec-98 17:26      -
         unix/                  09-Dec-98 17:26      -
         vms/                   09-Dec-98 17:26      -

Pay attention to the directories beginning with "cvs-" (you can ignore
most of the others).  There are three such directories, which means that
you're already faced with a choice: Get the designated "stable" release,
or go with a newer (but less-tested) interim release.  The stable
releases have only one decimal point, as in "cvs-1.10", whereas the
interim releases have minor version increments tacked on the end, as in
"1.10.5".

The GNU site usually only offers the major releases, not the interim
ones, so you won't see all of this if you get CVS from there.  In
general, the interim releases have been pretty safe, and sometimes
contain fixes to bugs that were found in the major release.  Your best
policy is to go with the highest interim release, but if you encounter
any problems with it, be prepared to drop back to the previous release,
as many times as necessary.  The highest release listed in the earlier
example is cvs-1.10.6.  Entering that directory, we see this:

     Index of /pub/cvs-1.10.6
         cvs-1.10.6.tar.gz      17-May-99 08:44   2.2M

That's it - the full source code to CVS.  Just download it to your
machine, and you're ready to build.  At this point, if you're already
familiar with the standard build process for GNU tools, you know what to
do and probably don't need to read anything between here and the section
Note: Anatomy Of A CVS Distribution.  On the other hand, if you're not
sure how to proceed, then read on....

The following compilation instructions and examples assume that you have
a fairly standard distribution of Unix.  Any of the free versions of
Unix (for example, FreeBSD or Linux) should work with no problem, as
should the major commercial Unix versions (such as SunOS/Solaris, AIX,
HP-UX, or Ultrix).  Even if these instructions don't work for you
exactly as written, don't give up hope.  Although covering the details
of compiling on every operating system is beyond the scope of this book,
I'll give some pointers to other help resources later in this chapter.

Anyway, to proceed with the compilation, first unpack the tar file using
GNU gunzip and tar (if you don't have these installed on your system,
you can get gunzip from `ftp://ftp.gnu.org/gnu/gzip/' and GNU's version
of tar from `ftp://ftp.gnu.org/gnu/tar/'):

     floss$ gunzip cvs-1.10.6.tar.gz
     floss$ tar xvf cvs-1.10.6.tar

You'll see a lot of file names fly by on your screen.

Now you have a new directory on your machine - cvs-1.10.6 - and it is
populated with the CVS source code.  Go into that directory and
configure CVS for your system, by using the provided configure script:

     floss$ cd cvs-1.10.6
     floss$  ./configure
     creating cache ./config.cache
     checking for gcc... gcc
     checking whether we are using GNU C... yes
     checking whether gcc accepts -g... yes
     checking how to run the C preprocessor... gcc -E
       (etc)

When the configure command finishes, the source tree will know
everything it needs to know about compiling on your machine.  The next
step is to type:

     floss$ make

You'll see lots of output fly by, then type:

     floss$ make install

You'll see yet more output fly by; when it's all over, CVS will be
installed on your system.  (You will probably need to do that last step
as the superuser.)

By default, the CVS executable will end up as `/usr/local/bin/cvs'.
This assumes you have a decent make program installed on your system
(again, if you don't have one, get the GNU project's make from
`ftp://ftp.gnu.org/gnu/make/').

If you want CVS to install to a location other than /usr/local/bin, you
should change how you run the initial configuration step.  For example,

     floss$ ./configure --prefix=/usr

results in CVS being installed as /usr/bin/cvs (it always ends up as
PREFIX/bin/cvs).  The default prefix is /usr/local, which is fine for
most installations.

Note To Experienced Users: Although older versions of CVS consisted of
more than just an executable in that they depended on having RCS
installed as well, this has not been the case since Version 1.10.
Therefore, you don't need to worry about any libraries or executables
other than cvs itself.

If you just intend to use CVS to access remote repositories, the
preceding is all you need to do.  If you also plan to serve a repository
from this system, a few additional steps are necessary, which are
covered later in this chapter.


automatically generated by info2www version 1.2.2.9