Requirements for Windows Builds
- In order to compile Zorba on Windows, you need a working Visual Studio (Express) installation (2008, 2010).
- If you want to compile Zorba using Visual Studio 2008, you will need to install the Visual C++ 2008 Feature Pack Release.
- Make sure that the libraries required for Zorba are built with the same version of Visual Studio that you use.
- The Windows version of some required packages are distributed by other web sites (all of them are pointed to from the main package web sites indicated in the Library Dependencies section):
Zorba's Automatic DLL Detection Mechanism
Zorba has in place an automatic DLL detection mechanism. This will try to automatically gather all the DLLs from the third party libraries and install them with Zorba when you do "make install" or you build the Visual Studio INSTALL project, to ensure that your installation will function regardless of the system or user's PATH.
Zorba will search for the third party libraries in order in:
- all the directories pointed by the
ZORBA_THIRD_PARTY_REQUIREMENTS
CMake configuration parameter
- e.g. if you have Xerces in "C:\tools" and IConv in "D:\tools", you must configure your build as follows:
cmake -D ZORBA_THIRD_PARTY_REQUIREMENTS=C:\tools;D:\tool {ZORBASRC}
and Zorba will find all it needs from Xerces and Iconv. (The directory names must contain "xerces" and "iconv" respectively, case insensitive)
- the
Program Files
directory on your system
- e.g. if you have cURL installed in "C:\Program Files*cURL*", Zorba will find all it needs from cURL. (The directory must contain "curl", case insensitive.)
- all the paths in the
PATH
variable
- e.g. if you have "C:\tools*ICU*\bin" in your path, Zorba will find all it needs from ICU. (The directory must only contain "icu".)
The important thing to note here is that if you have any third-party requirements installed in unusual locations, you should use the CMake configuration parameter ZORBA_THIRD_PARTY_REQUIREMENTS
instead of CMAKE_PREFIX_PATH
to specify those locations when configuring Zorba.
Building Zorba using a NMake Project
- Start a Visual Studio Command Line.
- Change the current working directory to the
{ZORBABUILD}
directory (as described in Creating a Build Directory).
- Execute CMake as follows:
cmake -G "NMake Makefiles" {ZORBASRC}
- Now you are ready to call "
nmake"
from the {ZORBABUILD}
directory.
Building Zorba using a Visual Studio Project
- Start Visual Studio Command Line
- Change the current working directory into the
{ZORBABUILD}
directory (as described in Creating a Build Directory).
- Execute CMake with the appropriate CMake Visual Studio generator for your installation (see
cmake –help
for a list of generators). For instance, cmake -G "Visual Studio 10" {ZORBASRC}
- Start Visual Studio, open the generated
zorba.sln
project file in {ZORBABUILD}
, and build the ALL
project.
HTTPS support
- In order to have SSL support in Zorba, you have to use the CURL library that has SSL support.
- There is one more thing: in order to validate the server's certificate, CURL+SSL needs to know about the root Certificates of Authenticity (CA): a set of public keys freely available on the internet.
- On Windows, Zorba expects this file to be called
cacert.pem
and searches for it in the current directory and system paths.
- This
cacert.pem
file can be found on the curl page: http://curl.haxx.se/docs/caextract.html .
- In order to disable the validation of the server certificate, the
ZORBA_VERIFY_PEER_SSL_CERTIFICATE
can be set to OFF
in cmake (and actually this is the default value). Set it to ON
to validate server certificate chain on every access to https://
.
- To read more about CURL+SSL: http://curl.haxx.se/docs/sslcerts.html .
- As an
https
test page, we used for example the rss feed fn:doc('https://www.npr.org/rss/rss.php?id=1001') .
Downloads for Non-Core Modules
ImageMagick (image-processing modules)
Just download the ImageMagick Windows binary from http://www.imagemagick.org/script/binary-releases.php and install it. We recommend the latest "Q8-windows-dll" version.
HTML (data-converters modules)
A binary installer for Tidy used to be available at: http://dev.int64.org/tidy.html, but as of this time of writing that site is down.