This document should help you to install and compile the VRUT framework on windows-based 32bit systems.
It is assumed that you are familiar with the management of libraries and the corresponding
environment variables on windows-based systems.

(April 2011 - Lukas Novosad - novosluk@fel.cvut.cz)


What you surely need is (most of it is contained in the /trunk/support folder of the VRUT directory):

-Visual Studio 2008
-wxWidgets 	(current version is 2.8.11, obtained from http://www.wxwidgets.org/, refer to the VRUT documentation how to compile it)
-GLUT		(current version is 3.7.6, obtained from: http://www.xmission.com/~nate/glut.html, pick the precompiled 32bit binaries)
-GLEW		(found in /trunk/support/glew	-> copy this folder to your libraries folder)
-ODE		(found in /trunk/support/ode	-> copy this folder to your libraries folder)
-glext.h	(found in /trunk/support/glext.h)


For modules which require sound processing or playback you need:

-freeALUT	(found in /trunk/support/alut 			-> copy this folder to your libraries folder)
-OpenAL		(found in /trunk/support/OpenAL11CoreSDK.zip 	-> install the OpenAL SDK, exact name might change in future)


For the module "simulaceJizdy you also need:

-OpenCV		(found in /trunk/support/OpenCV-2.1.0-win32-vs2008.exe	-> install the library, exact name might change in future)


Comments:

There is an inconsistency concerning the fact that GLEW and GLUT have different directory structures (include,lib,bin).
You have to create the following subdirectory in the GLUT installation directory

$GLUT/include/GL

and move the glut.h header into this directory because VRUT searches for it in there.

The glext.h header file (found in /trunk/support/glext.h) must also be included.
You may, for example, copy it into the $GLUT/include/GL folder.




Finally, you have to add the following environment variables and let them point to the respective locations:


These are required:
-WXWIN
-GLEW
-GLUT
-ODE


These are optional, depending upon which modules you want to compile:
-ALUT
-OPENAL
-OPENCV




When you are done with the setup you may open the vrut.sln (found in /trunk/vrut.sln) and look for the nmake makefile

makefile.win

in the VRUT project, this is the main nmake makefile. Here you can enable and disable the projects you want to compile.
Important note: If you simply try to disable the project of a module in VS, this won't have any effect on the build because VRUT uses nmake.
You should ask your mentor or supervisor which modules are required for your project. You should definitively disable the project

raytracergl

because it causes problems and will be removed in the future.


A module is disabled by putting a

#

symbol in front of the corresponding line. Keep in mind, that you have to do this for both the build (found under final:) and the
clean (found under clean:) rule for the corresponding project.


Let's say, for example, you want to disable the raytracergl module. Then, you have to look for the line

	start /D "../../modules/raytracergl" /B nmake -f makefile.win CFG=$(CFG) _64bit=$(_64bit)

in the final section and change it into

#	start /D "../../modules/raytracergl" /B nmake -f makefile.win CFG=$(CFG) _64bit=$(_64bit)

and in the clean section for

	start /D "../../modules/raytracergl" /B nmake -f makefile.win clean

and change it into

#	start /D "../../modules/raytracergl" /B nmake -f makefile.win clean


Important note: The # symbol has to be written at the beginning of the line and there is a tab space between the symbol and the rest of the line.


The same holds if you create a new module: You have to add a build rule to both sections, and, furthermore, create a makefile
for your module because every module has its own makefile, where you can specify libraries, which are only required for the module.
The makefile.win belonging to the respective module can be found the module's directory.


Now you may build the VRUT project in the VRUT solution. Add your own modules (as desribed in the VRUT documentation),
and, basically, have fun with the VRUT framework :-)


Finally, if you get an error with the ODE library (__HUGE), you should build it yourself. The sources are found in

/trunk/support/ode-0.11.1.zip

and the description as how to compile it can be found on the ODE website (http://www.ode.org/).