root@/software/cygwinports/tacg# cursor
  scientific sw
  cygwin ports
    clustal w


A restriction analysis tool.



tacg is a versatile tool for the restriction analysis of nucleic acid sequences developed by Harry Mangalam at UC Irvine. It allows to select the restriction enzymes by type or by name or by the number of sites in the sequence. It performs searches for nucleic acid patterns and for open reading frames. See the tacg homepage for further information about the software.

The CygWin port is based on tacg-3.04.



The source code is ANSI C and written to compile with gcc, so the stuff compiles almost out of the box. The following minor modifications are necessary:


regex.h is not part of CygWin, but it is shipped with tacg. All references in the source files to <regex.h> have to be changed to "regex.h". This holds true for ReadRegex.h, RecentFuncs.c, SeqFuncs.c, SlidWin.c, tacg.h.

Modify seqio.c

seqio.c needs three modifications. First, we have to define __unix so the correct stuff gets included. Second, we have to outcomment the definition of sys_errlist, as this is provided by <errno.h>. Finally, we have to define sys_errlist as _sys_errlist, as CygWin uses the latter version with a leading underscore.

After building the software, run strip tacg.exe to reduce the size of the executable.

System requirements

The following setup worked in my case:

  • Windows NT 4.0 SP3 Workstation
  • CygWin net release with Cygwin1.dll version 1.1.4

To install the software:

  • copy tacg.exe into /usr/local/bin
  • copy the files in the /data and /docs directories into one directory with read access for all users on the system, e.g. /usr/local/lib/tacg.
  • create a system-wide environment variable TACGLIB and enter the directory of the previous step as a value
  • copy the man page tacg.1 into /usr/man/man1.

Download information

Get the original sources of tacg.

The precompiled binary for Cygwin 1.1.4 with the data files and a diff file are shipped as cygwin1.1.4-tacg-3.04.tar.gz (334 kb).