Skip to content

Windows build

Anthony Catel edited this page Feb 13, 2017 · 5 revisions

This is work in progress. nidium still can't be built entirely on Windows

Setup summary (detailed below)

  • Windows 10
  • Visual Studio 2013 Ultimate
  • Visual Studio developer console amd64 (which is just a cmd.exe with some env var)
  • Console2

Build instructions

Those are personal notes on my journey to build each nidium dependencies. I'm going to start building each dependency in a "standalone" way (that is, without Konstruktor) and write down evey step and software needed.

Console2

Console2 is a better console for windows (better font, better history and copy/paste support).
You can select text using shift+click.

Link : https://sourceforge.net/projects/console/

Visual studio developer console

Some of the dependencies build using nmake (which ships with Visual studio). nmake is "make" for windows and use visual studio command line builder.

In order to setup a proper build enviroment, one must have all the env variable setup with the build tools bin PATH and so one.
Visual studio comes with a bat script in order to achieve this.

Open cmd.exe (or use a third party console like Console2) and run the following command :

> "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64

You now have a terminale capables of building 64bit binaries using command line tools

Python 2.7

Link : https://www.python.org/ftp/python/2.7.11/python-2.7.11.amd64.msi

During the installation, make sure you enable "Add python.exe to Path" (it's not the default)

c-ares

Link : http://c-ares.haxx.se/download/c-ares-1.11.0.tar.gz
Software / dependencies needed : None

In your Visual studio developer console go to the c-ares folder and run the following command :

> nmake -f Makefile.msvc

The static lib is now located in ./msvc120/cares/lib-release/libcares.lib

OpenSSL

Link : https://github.com/openssl/openssl/archive/OpenSSL_1_0_1s.tar.gz
Software / dependencies needed : Perl (I installed Perl using ActivePerl). It automatically setup the binary in the PATH env (need to restart the dev console)

In your Visual studio developer console go to the OpenSSL folder and run the following commands :

> perl Configure VC-WIN64A
> ms\do_win64a
> nmake -f ms\nt.mak

The static lib are now located in ./out32/libeay32.lib and ./out32/ssleay32.lib

libapenetwork

At this point we have all the dependencies required by libapenetwork.
However, since our configure script isn't working at the moment, we need to setup few things manually :

  • Create a third-party directory within ./libapenetwork/
  • git clone https://chromium.googlesource.com/external/gyp (whithin the newly third-party folder)