Subversion Repositories gelsvn

Rev

Rev 288 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
202 bj 1
// $Id: README_MSVC 437 2009-02-25 17:32:00Z awk $
2
//
3
Building instructions for GEL under Visual Studio 7.1 and 8 (2003 and 2005)
39 bj 4
 
202 bj 5
1. Project configuration
6
 
7
We use MPC to maintain .sln and .vcproj files, since the format of these files changes with each new version of Visual studio. The average GEL-user need not bother with this, since .bat files have been created to ease the use. 
8
 
9
More info on MPC can be found on:
10
http://www.ociweb.com/products/mpc
11
 
12
2. Subsetting
13
 
258 bj 14
The use of MPC allows relatively easy creation of subsets of GEL. An example subset is created using MPC and the Perl script makefiles/CGLA.pl which deletes all non-CGLA source code from GEL.
202 bj 15
 
16
3. Build Configurations
17
 
288 bj 18
Each project contain four configurations: Debug, Release, Install_Debug and Install. Debug and Release have the usual functionality, while Install_Debug and Install are special:
39 bj 19
 
288 bj 20
We assume, that once GEL is installed, it should be used without adding the source and header files to the particular project. Therefore we install GEL in an outside directory defined by the environment variables GEL_INCLUDE, GEL_LIB and GEL_BIN. In the configuration, this is done by setting the Target Directory to $(GEL_LIB), and, as a post-build event, all header files are copied to $(GEL_INCLUDE). This is done by the the Install_Debug and Install build configurations
39 bj 21
 
258 bj 22
The environment variables should be the paths where all 3rd party lib and
114 jab 23
header files are stored (like /usr/local/ on a *NIX system) 
39 bj 24
 
437 awk 25
4. Runtime checks: _SECURE_SCL and _HAS_ITERATOR_DEBUGGING
39 bj 26
 
437 awk 27
Due to legacy code in GEL, these runtime checks have to be disabled.  This
28
means that when you create a new project in Visual Studio that you intend to
29
use with GEL, you *must* also define _SECURE_SCL=0 and
30
_HAS_ITERATOR_DEBUGGING=0.  Failure to do so will result in random crashes.
213 sda 31