Wickbert Installation Instructions
- In order to install Wickbert you need CMake.
- For Windows: an environment variable named WXWIN should be set to the base wxWidgets installation directory. This is the only environmental variable you need to set.
- Run CMake, set the build directory (prefferably different than the source directory). Set the correct paths as hinted.
- Windows: CMake will create the Visual Studio solution files in the build sirectory
- Mac OS X: CMake generates the make files in the build directory.
- Build the library and the user interface wxModeler. Find the built items in the build directory/bin/release or debug
CMake Settings Details
 | If you upgrade your compile, such as from Visual Studio 2003 .Net (version 7) to Visual Studio 2005 (version 8) then you will need to press the Delete Cache button, which will cause CMake to ask you which compiler you want to target. |
- BOOST_INCLUDE_PATH - Boost is implemented with headers so all that is needed is the include path (no library path). This is usually the directory named with the boost version number and should have "boost" as a subdirectory. Files will be accessed as, for example, {BOOST_INCLUDE_PATH}/boost/algorithm/minmax.hpp.
- CGAL_CONFIG_H_PATH - For CGAL-3.2.1 installed in windows with VC++7 this is C:/Program Files/CGAL-3.2.1/include/CGAL/config/msvc.
- CGAL_INCLUDE_PATH - Set to the include subdirectory of the CGAL installation directory.
- CGAL_LIB_PATH - You will need to compile CGAL (be sure to use the same project settings as Wickbert, e.g. Multithreaded Debug) into a static library. This variable points to that library's directory. For windows VC++7 this is C:/Program Files/CGAL-3.2.1/lib/msvc7.
- GMP_INCLUDE_PATH - This is included in the CGAL distribution in {CGAL}/auxiliary/gmp/include.
- GMP_LIB_PATH - This too is included in CGAL in {CGAL}/auxiliary/gmp/lib.
- GSL_INCLUDE_PATH - Included in the Wickbert distribution in {Wickbert}/gsl.
- GSL_LIB_DEBUG_PATH - Included in the Wickbert distribution in {Wickbert}/lib-debug.
- GSL_LIB_PATH - Included in the Wickbert distribution in {Wickbert}/lib-release.
- OPENMESH_INCLUDE_PATH - The OpenMesh headers are separated into subdirectories under the top level OpenMesh directory and are accessed as, for example, OpenMesh/Core/Mesh/TriMeshT.hh, so the include path should be set to the directory holding the OpenMesh directory.
- OPENMESH_LIB_DEBUG_PATH - You will need to compile and install OpenMesh. For windows VC++7 systems, this is {OpenMesh}/Win/msvc7/Core/Debug.
- OPENMESH_LIB_PATH - Likewise for the release version, in .../msvc7/Core/Release.
- WB_USE_CG - Whether or not you are using the NVIDIA CG GPU programming language compiler. This is available from the NVIDIA SDK and is needed only if you want to use Voronoi Tesselation.
- WB_USE_CGAL - Enabled if you are using the CGAL computational geometry library, which is thus far needed only for clip-art rendering.
- WB_USE_ITK - Enabled if you are using the ITK image processing toolkit used for medical imaging.
- WB_USE_SFL - The moving least squares support can optionally use a SFL library, whatever that is.
- WB_USE_VTK - Enabled if you are using the VTK visualization toolkit.
- WXWIDGETS_USE_DEBUG - Enable to use the debug version of wxwidgets, in case you are tracking down a bug.
- WXWIDGETS_USE_MONO - Enabled for monolothic versions of wxwidgets.
- WXWIDGETS_USE_SHARED - Enabled if using the wxwidgets shared (.dll) library instead of the static (.lib) library.
- WXWIDGETS_USE_UNICODE - Enabled if you want to use the expanded unicode character set.
- WXWIDGETS_USE_UNIV - Enabled for universal versions of wxwidgets.
Download Checklist
Mandatory
- The Wickbert Library code
 | Where is the code? How do I get it? |
- wxWidgets - Set all these to 1: wxUSE_GLCANVAS, wxUSE_STREAMS, wxUSE_STD_IOSTREAM, wxUSE_STD_STRING in the configuration file, before compiling wxWidgets. Or, if you use the GNU tools, configure with the following options: --disable-shared --with-opengl --enable-std_string --enable-std_iostreams --enable-streams.
 | Which configuration are you supposed to build? |
- OpenMesh
 | Which version of OpenMesh? |
- GSL library - Find the Windows version here: GSL for Windows.
 | Must this be downloaded separately or not? |
- Boost libraries - For now, these are used for the interval arithmetic
Optional
- NVidia SDK - for Jerry's Voronoi shaders and other parts of the Wickbert library that use nVIDIA GPU acceleration.
- CGAL - for using wickbert to construct NPR clip art.
 | CGAL uses the GMP for arbitrary precision arithmetic. The binary version of the GMP library that comes with CGAL was compiled in release mode, multithread DLL (/MD), but will cause a heap problem when running wickbert compiled in debug (/MDd) mode. Here is a debug binary of GMP 4.1.4. (Place in CGAL/auxilliary/gmp/lib after renaming the existing gmp.lib to something else.) |
- VTK - for integration with the visualization toolkit.
- ITK - for integration with the ITK imaging library.
Fully Supported on Other Platforms (besides Window)
Mac
CMake can generate Xcode projects. Run "ccmake -G Xcode <path to the root source dir (psparam)>" in your build dir.
attachment:wickbertXcode.jpg attachment:wxmodelerMac.jpg
Linux
CMake can generate KDevelop projects. Run "ccmake -G KDevelop3 <path to the root source dir (psparam)>" in your build dir.
attachment:wickbertKdevelop.jpg attachment:wxmodelerLinux.jpg
Old Instructions (for the Visual Studio solution project that is in the main directory)
- The macro WB_USE_CG should be defined to build CG dependent shaders (like the Voronoi shader).
- If you use WB_USE_CG make sure your system defines NVSDK_INC_PATH, CG_INC_PATH, and CG_LIB_PATH. In Visual Studio you can change the macroes defined for the Preprocessor in the "Preprocessor" item of the C/C++ folder of a Project's Properties page. This should be added to the Particles project's preprocessor section in order to use the Voronoi shaders.
- The NVSDK_INC_PATH should point to the nVIDIA SDK.
- The CG_INC_PATH and CG_LIB_PATH should point to the respective directories for the nVIDIA Cg language installation.
- Define the environmental variables OPENMESH_DIR (where the [OpenMesh] directory is located), OPENMESH_LIB (where the [OpenMesh] library file(Core.lib) is located) and OPENMESH_LIB_DEBUG where the [OpenMesh] debug library file (Core.lib) is located) (unfortunately they have the same uninspired name "Core.lib", one distinguishes them by location)
- The BOOST_INC_PATH should point to the boost include directory
- The BOOST_LIB_PATH should point to the boost libraries directory
|
|
|