HMMER is designed to run on UNIX platforms. The code is POSIX-compliant ANSI C. You need a UNIX machine and an ANSI C compiler to build and use it.
Some optional tests and utilities use Perl. make check will only work if you have Perl installed. However, Perl isn't necessary to make HMMER work.
HMMER includes support for two kinds of parallelization: POSIX threads and PVM (Parallel Virtual Machine). Most modern UNIX OS's support POSIX threads. HMMER's configure script attempts to automatically detect your threads library, if you have one, and will build in multithreading by default - so you don't need to do anything special to get multithreading. PVM, in contrast, is a separate, third-party software application, and you will have to install and configure it before building HMMER with PVM support. For this reason, PVM support in HMMER is not enabled by default. See the PVM section of this chapter for more details.
HMMER 2 should be easy to port to non-UNIX operating systems, provided they support ANSI C and some reasonable level of POSIX compliance. A WinNT distribution is available by anonymous FTP from Time Logic, Inc. HMMER 1 was ported by other people to Digital VAX/VMS, Apple MacOS, Win95, and WinNT with relatively little difficulty, and I've made efforts to improve the portability of the HMMER 2 code since then. I would greatly appreciate receiving diffs for any ports of HMMER to any platform.