UCSC Genome Bioinformatics
Home- Genomes- Blat- Tables- Gene Sorter- PCR- Session- FAQ- Help
  Build and Installation Instructions
 

NOTE: These instructions are intended for Unix/Linux systems only. Building the source on other systems is beyond the scope of these instructions.

SEE ALSO: README files in the source tree describing the build process:

  • src/README
  • src/product/README.*
  • src/hg/makeDb/trackDB/README
  • src/hg/makeDb/doc/<db>.txt (plain text files)

  1. Check that the environment variable MACHTYPE exists on your system. It should be present on Unix systems. On Linux systems, MACHTYPE will probably be i686, and for a Sun it will probably be sparc. If necessary, set this environment variable in your shell environment:
    MACHTYPE=i686
    It should be a simple non-hyphenated word such as: i386 i686 sparc alpha x86_64 ppc, etc...

  2. Create a subdirectory named /bin/$MACHTYPE in your home directory. During the build, binaries will be moved to this subdirectory.
    $ mkdir ~/bin/$MACHTYPE

  3. Set the MYSQLINC and MYSQLLIBS environment variables:

    1. MYSQLINC should be set to point to the mySQL include files. For example:
      MYSQLINC=/usr/include/mysql
      -or-
      MYSQLINC=/usr/local/mysql/include

    2. MYSQLLIBS should point to the location of the libmysqlclient.a library and any other libraries needed on your platform to link network applications.
      MYSQLLIBS='/usr/lib/mysql/libmysqlclient.a -lz'

      For example, Solaris often needs:
      MYSQLLIBS='/usr/local/mysql/lib/mysql/libmysqlclient.a -lz -lsocket -lnsl'

    3. If available, the commands
      mysql_config --libs
      mysql_config --include
      will display the appropriate arguments to use in these environment variables.

  4. Create a directory named jksrc and go to it.

  5. Unzip jksrc.zip. This creates the source hierarchy ./kent (the source tree is also available via CVS).

  6. Go to the kent/src directory and type: make libs. This builds the libraries from the source directories:
    • jkweb.a from kent/src/lib
    • jkOwnLib.a from kent/src/jkOwnLib
    • jkhgap.a from kent/src/hg/lib
    • jkhpap.a from kent/src/hg/protein/lib
    Placing those lib.a files into src/lib/$MACHTYPE

  7. Go to the kent/src/hg directory and type: make compile.

    Then, type: make install DESTDIR=/destination/prefix CGI_BIN=/cgi-bin/path.

    The resulting binaries are moved to /destination/prefix/cgi-bin/path, with additional data and custom track loader binaries also being installed in this cgi-bin hierarchy.

    Pre-compiled Red-Hat (2.6.12-1.1381_FC3smp) AMD Opteron x86_64 64-bit binaries can be fetched with the rsync command:

    rsync -avzP rsync://hgdownload.cse.ucsc.edu/cgi-bin/ $CGI_BIN/

    There are a number of data files that are also used in this directory. This rsync will fetch them all. If you need i386 (x86) 32-bit binaries, please use the following rsync in addition to and after the above rsync, to replace the 64 bit binaries:

    rsync -avzP rsync://hgdownload.cse.ucsc.edu/cgi-bin-i386/ $CGI_BIN/

  8. Many other programs are available in the source tree. For any particular program, go to its source directory and type: make. The resulting binary will be moved to your subdirectory ~/bin/$MACHTYPE as a convenience. You can move these files elsewhere as desired.

    There are hundreds of utilities used for processing genome assemblies and preparing data for creating tracks in the browser. The file ./kent/src/README is a general guideline to the major processing categories in the source tree file.

    To see examples of how the various programs are used and how tracks are created, examine any of the <db>.txt files in ./kent/src/hg/makeDb/doc/<db>.txt (these are ordinary text files, not Microsoft word doc files).


Should you have any comments or questions, please contact genome-mirror@cse.ucsc.edu .
This page last modified: Tuesday, 27-Mar-2007 12:12:02 PDT.