Windows Build Instructions

From PsiWiki

Disclaimer: These instructions are unofficial and may or may not work for you.

This page contains instructions on how to get Psi (version<=0.10) built on Windows platforms.

Note:

Compiler restrictions:


Contents

Downloading & Installing Qt

Psi requires Qt-3.x (where x >= 1) to compile. You can use one of the following Qt3 editions:

  • Qt3/Eval which unfortunately expires after 30 days (and programs compiled using it will stop working)
  • one of Qt3/Commercial editions.

You cannot use Qt4 to compile Psi version <= 0.10. Qt4 is completely incompatible with Qt3.

Downloading & Building QCA

  1. Download QCA 1.0 here, and unpack it in C:\Programs. Rename the qca-1.0 dir to qca
  2. People using Microsoft Visual Studio .NET should apply this patch
  3. From the qca dir, build QCA as follows:
qmake
nmake

Building Psi

  1. Get the sources (sourceforge.net) and put them in C:\Programs\Psi.
  2. You can edit conf_win32.pri to indicate where QCA is installed, but the defaults should be correct. Note that these paths are relative to the src/ dir of the Psi source code.
/!\ This only works with the current development version of Psi. In previous versions,
the build parameters concerning QCA are  located inside src/src.pro.
Make sure they look like
   QCA_PATH = ../../qca
   INCLUDEPATH += $$QCA_PATH/src
   LIBS += $$QCA_PATH/qca.lib
  1. Build Psi
 qmake
 nmake

Packaging Psi (Optional)

You can make a distributable package by running makewin from the Psi source dir. This will create a directory called psiwin, which you can zip and distribute.

Building the QCA TLS plugin (optional)

  1. Download the OpenSSL binaries and development files here. Install them in C:\Programs\openssl
  2. Download the QCA 1.0 TLS plugin here and unpack it in C:\Programs. It should create a dir qca-tls-1.0.
  3. In the qca-tls dir, edit qca-tls.pro, and modify the INCLUDEPATH and LIBS variable to look like this:
 INCLUDEPATH += c:\Programs\openssl\include
 LIBS += c:\Programs\openssl\lib\libssl.lib c:\Programs\openssl\lib\libcrypto.lib 
  1. Build the plugin as follows:
 qmake
 nmake
  1. Finally, put the plugins and libraries in the right place. The qca-tls.dll plugin from QCA should be put in a dir called crypto in your Psi package. The plugin depends on libssl32.dll and libeay.dll from OpenSSL (which can be found in C:\Programs\openssl\bin). Copy these files to the toplevel dir of your Psi package (together with Psi.exe)

Complete compile & link problem solutions

Here are some links to threads in our Forums, covering some of the problems that can be met while compiling Psi:

  1. error C2664: Need help compiling qca-tls - How to solve compile error in QCA-TLS, when using OpenSSL 0.9.8.
  2. Step-by-step compiling Psi-0.9.3 on Windows - Describes how to solve compile & link errors when compiling Psi-0.9.3 and QCA-1.0 using Qt-3.3.5 with Microsoft Visual C++ 6.