Build requirements

This page may be out of date. Please see the [source:/trunk/README README] file for current information.

Requirements for compiling

 Visual C++ 2005 (Express edition is unlikely to work as the code uses ATL attributes which, I believe, require ATL 7).

WTL 8 which can be obtained from Microsoft of through  SourceForge:

For the Libssh2Provider backend:

  • libssh2
  • OpenSSL
  • zlib

The directories to put the source code for these dependencies in should already exist in the Libssh2Provider/ directory.

libssh2 can be obtained from Either the latest release (0.18) or the CVS head appear to work.

You can get OpenSSL from and compile it yourself but a much easier option is to download my pre-packaged binary with just the stuff needed for Swish:

zlib binaries are available at

Assuming you have the necessary tools available on your PATH (probably by installing cygwin), the easiest way to set everything up is to run the following commands in the Libssh2Provider/ directory:

cvs -d co libssh2
wget ""
unzip -d zlib
wget ""
unzip -d openssl

Requirements for testing

CppUnit? (works with v1.12.0, may work with other versions) must be present on the local machine. Many tests also require a remote host available to connect to over SSH. Swish assumes this is unix-based.

Environment variables

  • CPPUNITDIR: The location of the CppUnit? files.
  • TEST_HOST_NAME: The name of the remote testing host.
  • TEST_USER_NAME: The user name of the SSH account on the remote host.
  • TEST_HOST_PORT: The port on the remote host that SSH is listening on (optional - defaults to 22 if not set).
  • TEST_PASSWORD: The password to use to connect to the remote host if required.