# wc3270 Build Instructions

## Using MinGW

### Under Cygwin

wc3270 can be built on Windows using the MinGW tools under Cygwin. For more information about MinGW, visit the MinGW webpage. For more information about Cygwin, visit the Cygwin webpage.

The minimum set of Cygwin packages needed to build wc3270 are:

- The default set (bash, etc.)
- The make package from the Devel group.
- The gcc-core package from the Devel group.

To build wc3270, start a Cygwin shell, cd to the directory where the source code resides, and type:

       make

wc3270 was developed primarily on 32-bit Windows XP and 64-bit Windows 7, but should be buildable on Windows Server 2003 or Windows 2000 (though Windows 2000 has been known to build defective wc3270 DLLs). It has not been built on 64-bit XP or on Vista.

### On Linux

wc3270 can also be built on Linux with the MinGW cross-compiler. (This is how public releases of wc3270 are built.) On Ubuntu, this compiler is available as the mingw32 package, and the Makefile has been set up to use it. To build wc3270 on Linux with MinGW, use the command:

       make CROSS=1

### With OpenSSL Support

To build an OpenSSL version of wc3270 on Cygwin or Linux, you will need the header files and libraries from the full Win32 OpenSSL distribution described in the SSL Instructions (not the 'lite' version). First, install OpenSSL on your Windows box. Then create a directory called `/usr/local/OpenSSL-Win32` under Cygwin or on your Linux system. Then copy the `include` and `lib` directories from the OpenSSL distribution on the Windows box (usually located in `C:\OpenSSL-Win32`) into `/usr/local/OpenSSL-Win32` on the Cygwin or Linux system. The Makefile will find them automatically and build an SSL-based wc3270. If for some reason you later want to build a non-SSL wc3270, pass the command-line option `NO_SSL=1` to make.

## Using Microsoft Tools

To build wc3270 using Microsoft Visual C++, start a Command Prompt window. At the command prompt, 'cd' to the wc3270 source directory, and type:

       nmake /f Msc\Makefile

This will build `wc3270.exe` and the DLLs and utilities needed to install and run it.

Note that the resulting version of wc3270 will not include SSL support. To build an OpenSSL version of wc3270 with MSC, you will need the header files and libraries from the full Win32 OpenSSL distribution described in the SSL Instructions (not the 'lite' version). First, install OpenSSL on your Windows box. Then you must modify `Msc\Makefile`; instructions for doing that are included in the file itself.

## Creating an Installer

The source tarball also includes an .iss file for use with Inno Setup. This is used to construct the install executable. See the Inno Setup webpage for details.