Windows installer (ToDo Update)¶
Overview¶
The Windows installer is generated with Inno Setup. The generation script can
be found in tools
(tympan_installer.iss
).
There are 4 main steps during the installation:
Copy of Code_TYMPAN install directory
Copy of a custom Python27 directory
Copy of Microsoft Visual C++ 2010 Redistributable Package libraries (vcredist)
Setting the needed environment variables
To generate the installer, just open tympan_installer.iss
with Inno Setup
and click on “Build”. The installer will be created in an Output
directory
in the same directory as the script. The script must be placed in the parent directory of
Tympan install directory before running it.
Don’t forget to modify the script in order to put the right path to the Python27 and vcredist directories if needed.
Copy of Code_TYMPAN install files¶
This step is simple: a Release
installation of Code_TYMPAN has to be made
in a previously empty install directory.
All the files of the install directory will be copied into the installer, except
for generated files like .pyc files.
Building of the custom Python27 directory¶
A custom python is made, embedding the correct version of the needed libraries.
It is based on the official Python 2.7 Windows installer retrieved from the python
website download page (choose Python 2.7.8 Windows Installer
for a 32
bits installation).
Once the installation is done, the python27.dll
library has to be copied from
C:\Windows\System32
to the newly created python directory (should be C:\Python27
).
Uppon this base are added (mostly downloading a wheel and installing it with pip):
- Shapely (version 1.3)
Pypi installer is convenient since it already embeds
GEOS
, which is needed by shapely- Six, Python-Dateutil, Pytz, Pyparsing
They are
Matplotlib
dependencies- Matplotlib (version 1.4)
An unofficial Windows binary can be found at Gohlke website (choose
matplotlib‑1.4.0.win32‑py2.7.exe
)- Numpy (version 1.8)
An unofficial Windows binary can be found at Gohlke website (choose
numpy‑MKL‑1.8.2.win32‑py2.7.exe
)- Cython (version 0.20.2)
An unofficial Windows binary can be found at Gohlke website (choose
Cython‑0.20.2.win32‑py2.7.exe
)- Setuptools
It is needed for
descartes
installation (choosesetuptools‑5.4.2.win32‑py2.7.exe
on Gohlke website)- Descartes
Must be installed after shapely, numpy and matplotlib since it depends on these libraries. It can be retrieved from the Python Package Index and installed with this command:
python setup.py install
wherepython
must be the intepreter we’ve just installed (should beC:\Python27\python.exe
)- Scipy (version 0.14)
An unofficial windows binary can be found at Gohlke website
To install a wheel with pip (download get_pip.py):
C:\Python27\python.exe get_pip.py
C:\Python27\python.exe -m pip install my_wheel.whl
The resulting Python27
directory won’t be copied directly in C:in order to
avoid potential conflicts with another python installation. Therefore, it is
copied inside Code_TYMPAN
install directory.
Copy of Microsoft Visual C++ 2010 Redistributable Package libraries¶
Code_TYMPAN
depends on Visual C++ packages to work correctly. These packages
are installed with Visual Studio and some other applications. But they might not
already be present in the target system. That is why they are copied in Code_TYMPAN
directory (at the same level of the other dll, this way it is not necessary to modify the
path). They must be put in a vcredist
directory at the same level as the script to be
copied.
A VC Redistributable Package installer can be found at this Microsoft website download page. Don’t forget
to choose the version corresponding to the current Visual Studio
version
(for know, 2010).
If Visual Studio is installed, the dlls can also be found in
C:\Program Files (x86)\Microsoft Visual Studio version\VC\Redist\platform\library\
.
Environment management¶
For Code_TYMPAN
to work on Windows, 2 environment variables must be set in the
user registry:
CGAL_BINDINGS_PATH (path to CGAL bindings libraries)
TYMPAN_PYTHON_INTERP (path to Python 3 interpreter – the custom one)
They are set by the installer at the end of the installation.
If it doesn’t work¶
Some libraries could be missing. You can use the dependency walker to identify the dependencies of a library.
Uninstall step¶
By default, the entire Code_TYMPAN
directory will be removed, including its embedded Python27
directory.
TYMPAN_PYTHON_INTERP and CGAL_BINDINGS_PATH environment variables will also removed from the registry.