System Environment Variables

Description of system variables:

CASROOT is used to define the root directory of Open CASCADE Technology; PATH is required to define the path to Open CASCADE Technology libraries, binary and 3rdparty folder; LD_LIBRARY_PATH is required to define the path to Open CASCADE Technology libraries, binary and 3rdparty folder (on UNIX platforms only); MMGT_OPT if set to 1 (default), memory manager performs optimizations as described below; if 0, every memory block is allocated in C memory heap directly (via malloc() and free() functions). In the latter case, all other options except MMGT_CLEAR are ignored; MMGT_CLEAR if set to 1 (default), every allocated memory block is cleared by zeros; if set to 0, memory block is returned as it is; MMGT_CELLSIZE defines the maximal size of blocks allocated in large pools of memory. Default is 200; MMGT_NBPAGES defines the size of memory chunks allocated for small blocks in pages (operating-system dependent). Default is 10000; MMGT_THRESHOLD defines the maximal size of blocks that are recycled internally instead of being returned to the heap. Default is 40000; MMGT_MMAP when set to 1 (default), large memory blocks are allocated using memory mapping functions of the operating system; if set to 0, they will be allocated in the C heap by malloc(); MMGT_REENTRANT when set to 1, all calls to optimized memory manager will be secured against possible simultaneous access from different execution threads. This variable should be set in any multithreaded application that uses optimized memory manager (MMGT_OPT=1) and has more than one thread potentially calling Open CASCADE Technology functions. Default is 0; Special note: for applications that heavily use Open CASCADE Technology memory manager from more than one thread, on multiprocessor hardware, execution with option MMGT_OPT=0 can be more productive than with option MMGT_REENTRANT=1. CSF_LANGUAGE is required to define the default language of messages; CSF_EXCEPTION_PROMPT – if defined and set to 1 then a diagnostic message is displayed in case of an exception; CSF_MDTVFontDirectory accesses the fonts that can be used in Open CASCADE Technology; CSF_MDTVTexturesDirectory defines the directory for available textures when using texture mapping; CSF_UnitsDefinition and CSF_UnitsLexicon are required by programs considering units; CSF_SHMessage is required in order to define the path to the messages file for ShapeHealing; CSF_XSMessage is required in order to define the path to the messages file for STEP and IGES translators; CSF_StandardDefaults and CSF_PluginDefaults are required in order to maintain CASCADE Persistence mechanism to make possible any open/save operations with OCAF documents; CSF_StandardLiteDefaults is required in order to maintain CASCADE Persistence mechanism to make possible any open/save operations with Lite OCAF documents; CSF_XCAFDefaults any open/save operations for XDE documents; CSF_GraphicShr is required to define the path to the TKOpenGl library; CSF_IGESDefaults and CSF_STEPDefaults are required for IGES and STEP translators correspondingly in order to define the path to the resource files; CSF_XmlOcafResource - is required in order to set the path to XSD resources, which defines XML grammar. As part of XML persistence support, these definitions can be used by end users in XML validators or editors, together with persistent XmlOcaf documents; TCLLIBPATH, TCL_LIBRARY, TK_LIBRARY and TIX_LIBRARY are required to allow work with DRAW and WOK; Example: Windows platform The env.bat script is located in the OpenCACADE<version_number>/ros folder. set CASROOT=V:\OpenCASCADE<version_number>\ros set PATH=%CASROOT%\win32\dll;%CASROOT%\..\3rdparty\win32\tcltk\bin;%PATH% set CSF_LANGUAGE=us set MMGT_CLEAR=1 set CSF_EXCEPTION_PROMPT=1 set CSF_MDTVFontDirectory=%CASROOT%\src\FontMFT set CSF_MDTVTexturesDirectory=%CASROOT%\src\Textures set CSF_UnitsDefinition=%CASROOT%\src\UnitsAPI\Units.dat set CSF_UnitsLexicon=%CASROOT%\src\UnitsAPI\Lexi_Expr.dat set CSF_SHMessage=%CASROOT%\src\SHMessage set CSF_XSMessage=%CASROOT%\src\XSMessage set CSF_StandardDefaults=%CASROOT%\src\StdResource set CSF_PluginDefaults=%CASROOT%\src\StdResource set CSF_XCAFDefaults=%CASROOT%\src\StdResource set CSF_GraphicShr=%CASROOT%\win32\dll\TKOpenGl.dll set CSF_IGESDefaults=%CASROOT%\src\XSTEPResource set CSF_STEPDefaults=%CASROOT%\src\XSTEPResource set TCLLIBPATH=%CASROOT%\..\3rdparty\win32\tcltk\lib set TCL_LIBRARY=%CASROOT%\..\3rdparty\win32\tcltk\lib\tcl8.4 set TK_LIBRARY=%CASROOT%\..\3rdparty\win32\tcltk\lib\tk8.4 set TIX_LIBRARY=%CASROOT%\..\3rdparty\win32\tcltk\lib\tix8.1 Example: Unix platform The env.csh and env.ksh scripts are located in the OpenCACADE<version_number>/ folder. setenv CASROOT /dn03/OS/OCC/OpenCASCADE-<version_number>/ros set OS_NAME=`uname` if ( $?PATH ) then setenv PATH $CASROOT/../3rdparty/$OS_NAME/tcltk/bin:$CASROOT/$OS_NAME/bin:$PATH else setenv PATH $CASROOT/../3rdparty/$OS_NAME/tcltk/bin:$CASROOT/$OS_NAME/bin endif if ( $?LD_LIBRARY_PATH ) then setenv LD_LIBRARY_PATH $CASROOT/../3rdparty/$OS_NAME/tcltk/lib:$CASROOT/$OS_NAME/lib:$LD_LIBRARY_PATH else setenv LD_LIBRARY_PATH $CASROOT/../3rdparty/$OS_NAME/tcltk/lib:$CASROOT/$OS_NAME/lib endif setenv CSF_MDTVFontDirectory $CASROOT/src/FontMFT setenv CSF_LANGUAGE us setenv MMGT_CLEAR 1 setenv CSF_SHMessage $CASROOT/src/SHMessage setenv CSF_XSMessage $CASROOT/src/XSMessage setenv CSF_MDTVTexturesDirectory $CASROOT/src/Textures setenv CSF_StandardDefaults $CASROOT/src/StdResource setenv CSF_PluginDefaults $CASROOT/src/XCAFResources setenv CSF_XCAFDefaults $CASROOT/src/XCAFResources setenv CSF_GraphicShr $CASROOT/$OS_NAME/lib/libTKOpenGl.so setenv CSF_UnitsLexicon $CASROOT/src/UnitsAPI/Lexi_Expr.dat setenv CSF_UnitsDefinition $CASROOT/src/UnitsAPI/Units.dat setenv CSF_EXCEPTION_PROMPT 1 setenv CSF_IGESDefaults $CASROOT/src/XSTEPResource setenv CSF_STEPDefaults $CASROOT/src/XSTEPResource setenv TCLHOME $CASROOT/../3rdparty/$OS_NAME/tcltk setenv TCLLIBPATH $TCLHOME/lib if ( $OS_NAME == "SunOS" ) then setenv ITK_LIBRARY $TCLLIBPATH/itk3.2 setenv ITCL_LIBRARY $TCLLIBPATH/itcl3.2 setenv TIX_LIBRARY $TCLLIBPATH/tix8.1 setenv TK_LIBRARY $TCLLIBPATH/tk8.4 setenv TCL_LIBRARY $TCLLIBPATH/tcl8.4 else if ( $OS_NAME == "Linux" ) then setenv ITK_LIBRARY $TCLLIBPATH/itk3.2 setenv ITCL_LIBRARY $TCLLIBPATH/itcl3.2 if ( $?TIX_LIBRARY ) then unsetenv TIX_LIBRARY endif setenv TK_LIBRARY $TCLLIBPATH/tk8.4 setenv TCL_LIBRARY $TCLLIBPATH/tcl8.4 endif