Required packages (short version)

SDG software requirement:

Microsoft Visual Studio Express 2008 for Windows Desktop and some complementary resources being utilized for SDGFEM code can be accessed in the following:

TIP:   In order to execute most of these programs (e.g. exe files) on some systems you need to run them as administrator (i.e., Right click and then run as administrator)

 

1.   Microsoft Visual Studio Express 2008

Download it from VC:2013 (version 12).

2.   Blitz

Blitz is a high-performance vector mathematics library written in C++. This library is employed for array manipulation in C++ with a speed comparable to FORTRAN implementations, while preserving an object-oriented interface. These results are being obtained not through better optimizing compilers, preprocessors, or language extensions, but through the use of template techniques. By using templates cleverly, optimizations such as loop fusion, unrolling, tiling, and algorithm specialization can be performed automatically at compile time. The Blitz library is able to parse and analyze array expressions at compile time, and performs loop transformations which have until now been the responsibility of optimizing compilers.

  1. Download Blitz.
  2. Unzip it and open “Blitz-Library.sln” file.
  3. Compile it via “clean solution” and “build solution” in BUILD tab.

 

3.   Boost

Boost is a set of libraries for the C++ programming language that provide support for tasks and structures such as linear algebra, pseudorandom number generation, multithreading, image processing, regular expressions, and unit testing. It contains over eighty individual libraries.

 

Download the latest version of Boost.

Installation:

  • right click on bat file->run as administrator.
  • Recommended: change install folder to C:\Program Files (x86)\boost_1_XX_0 where XX stands for version number.
    Update: 08/23/2017, at the moment version 58 is used for VC2013 (version 12) for Win32 systems, so this file is used for installation:
    boost_1_58_0-msvc-12.0-32.exe

4.   OpenGL

Open Graphics Library is a cross-language, multi-platform application programming interface (API) for rendering 2D and 3D vector graphics. A few libraries have been designed solely to produce an OpenGL-capable window. The first such library was GLUT. It is later superseded by freeglut. It is an open source alternative to the OpenGL Utility Toolkit (GLUT) library. GLUT (and hence freeglut) allows the user to create and manage windows containing OpenGL contexts on a wide range of platforms and also read the mouse, keyboard and joystick functions. freeglut is intended to be a full replacement for GLUT, and has only a few differences.

 

  1. Download freeglut.
  2.  Extract its contents to a folder and copy the following files to these locations:
  • Copy freeglut.dll to C:\Windows\System32 (C:\Windows\SysWOW64 for x64 bit operating systems)
  • Copy freeglut.lib to C:\Program Files(x86)\Microsoft Visual Studio #\VC\Lib
  • Copy freeglut.h, freeglut_ext.h, freeglut_std.h, glut.h to C:\Program Files(x86)\Microsoft Visual Studio #\VC\Include

 

5.   FreeImage

FreeImage is an Open Source library project to support popular graphics image formats like PNG, BMP, JPEG, TIFF and others. FreeImage is easy to use, fast, multithreading safe, compatible with all 32-bit or 64-bit versions of Windows, and cross-platform.

  1. Download FreeImage.
  2. Extract its contents to a folder and copy the following files to these locations:
  • Copy FreeImage.dll from the Dist folder in the Zip file to C:\Windows\System32 (C:\Windows\SysWOW64 for x64 bit operating systems)
  • Copy FreeImage.lib from the Dist folder in the Zip file to C:\Program Files(x86)\Microsoft Visual Studio #\VC\Lib
  • Copy FreeImage.h, FreeImageIO.h from the Dist folder in the Zip file to C:\Program Files(x86)\Microsoft Visual Studio #\VC\Include

Add Blitz and Boost libraries to VC++ Directories:

This is changed in new VC versions. Ask Philip Clarke how to set this up in new versions!

In order to let VC++ utilize the Blitz and Boost libraries in building solution as required, you must add these libraries to VC++ directories as the following:

Main top VC++ menu> Tools> Options> Projects and Solutions> VC++ Directories

In “Includes files” tab, you need to add the address folders containing the library files as illustrated below:

second

 

In “Library files” tab, you need to add the addresses of the library files as illustrated below:

third