Building PGP 5.0i on Win32

GENERAL
Prior to starting, you should have Microsoft Visual C++ 4.2 or greater
installed.  The build and install process takes about a half an hour
from start to finish on a Pentium 133 with 16 MB of RAM running Windows
95.  The tools to create an actual InstallShield self-extracting
executable are not included due to copyright concerns, but you will be
able to perform a manual install utilizing the commands in this document.
It is assumed that you have a basic familiarity with WinZip, MSVC++, the
DOS command line and the Window 95/NT Desktop.

This product will compile with MSVC++ 5.0, but it has been relatively
untested in this environment, and it is recommended that you use 4.2
to perform your build.  If you wish to proceed with 5.0, you will need
to load each .mdp file into 5.0 in order to convert the project files.
Then, generate a make file for each project, and proceed with the
following instructions.

BUILDING
1) Run an MSDOS window.  All commands in this document should be
executed there unless otherwise specified.

2) Set up the MSVC++ build environment.  Execute:

  \msdev\bin\vcvars32 x86

Obviously, substitute the path to your MSDEV\BIN directory, if
necessary.  PGP 5.0i has only been tested under the x86 platform.

3) If you have not done so already, unpack your source distribution.
This should result in an SRC directory (containing the PGP libraries)
and a WIN32 directory (containing the Win32-specific user interface
sources).

4) Set up the library header files.  Execute:

  cd src
  mkhdrs

5) Build the PGP libraries.  Execute:

  libbuild release

If you wish, you may build a debug version by executing:

  libbuild debug

If you wish to build an RSAREF or no RSA version, you must load
src\lib\pgp\pgp.mdp into the MSVC++ Integrated Development Environment
and select the appropriate build target.

6) Move the newly created library files to the win32\lib directory:

  release release

Or, if you built a debug version:

  release debug

7) Build the Win32 GUI elements.  Execute:

  cd ..\win32
  pgpbuild release

The pgpbuild batch file will also accept the debug option, which
builds a debug version, and the clean option (i.e., "pgpbuild release
clean"), which will eliminate any old files from a build.

8) Move the files to a common location.  If you built release in step
seven, you may do this by executing:

  release release

If you built debug, run:

  release debug

This will copy all of the built files to win32\release (regardless of
which version you built).

INSTALLING
If the compile above went smoothly, and you are still in the win32
directory, you may now install the product.

1) If you have previously installed PGP 5.0, Windows may be locking
many of the DLLs you need to update.   If you have not previously
installed PGP 5.0, you may skip this step.  To unlock the DLLs:

  Exit any applications that may be using PGP (this includes PGPkeys,
    PGPtray, Eudora, Exchange and Windows Explorer).

  If you're running Windows 95:
    Ensure that you have an MSDOS window open.
    Select Start/Shutdown
    On the resulting dialog box, hold down control, alt and shift, and
      simultaneously left-click "No."  This will shutdown the Windows
      desktop.

  On all Windows platforms:
    Enter the MSDOS window, and delete the following files:
      c:\windows\system\pgpwctx.dll
      c:\windows\system\pgp.dll

  On Windows 95:
    To get your desktop back, execute:
      explorer
    Windows may complain about missing files (especially PGPtray); do
      not accept any programs it finds as possible matches.  This
      problem will be resolved after you finish installing, below.

2) Install the binaries.  Execute:

  cd install\easy
  install

This batch file will ask you for the locations of various directories,
but all should be self-explanatory.  It will also update your registry
entries as needed by PGP.  If you have any trouble with your registry
entries (such as not seeing the context menus), we reccomend getting
a version of PGP with the self-extracting executable, installing it,
and then installing your compiled binaries over it.

CREDITS
This install document was crafted from information from Phil Nathan
and Hal Finney.

EPILOGUE
Your install should now be complete.  You should also read the file
win32\install\DATA\PGPmail\Readme.txt, which contains important
release information.  Unfortunately, there is no automated way to
remove the registry keys if you install using the method above and
later decide to uninstall.  The file win32\install\easy\pgp.reg
contains a list of registry keys if you wish to remove them manually.

We hope you enjoy using PGP 5.0i for Windows.

Brett A. Thomas
Senior Member of Technical Staff, Pretty Good Privacy, Inc.
bat@pgp.com
quark@baz.com

[Modified for PGP 5.0i by Ståle Schumacher <stale@hypnotech.com>]
