From: Johannes B. <jb...@da...> - 2014-08-08 10:37:56
|
Hello, I'm in the process of porting our application to the MS Visual Studio 2013 (a.k.a. VC12) compiler and have found some minor problems. 1. In file opensg\Source\System\Cluster\Window\Base\OSGClusterWindow.cpp at line 235 I have changed from SFATAL << "Error starting: " << command << std::endl; to SFATAL << "Error starting: " << command.str() << std::endl; because I got the following error message: ...\OSGClusterWindow.cpp(235): error C2678: binary '<<' : no operator found which takes a left-hand operand of type 'std::basic_ostream<char,std::char_traits<char>>' (or there is no acceptable conversion) 2. The next two issues are relevant only because I switched to VTK 6.1: a) CMakeLists.txt line 735 I changed the line from OSG_SET(OSG_VTK_LIBS "vtkCommon;vtkFiltering;vtkGraphics;vtkIO;vtkRendering") to include(${VTK_USE_FILE}) OSG_SET(OSG_VTK_LIBS "${VTK_LIBRARIES}") b) opensg\Source\Contrib\VTK\OSGVTKPolyDataMapper.cpp line 394 I changed the line from pMapper->GetInput()->Update(); to #ifdef OSG_WITH_VTK_6 pMapper->Update(); #else pMapper->GetInput()->Update(); #endif and added a the flag OSG_WITH_VTK_6. I'm not sure if this change is semantically correct, but at least it compiles fine :-) 3. The last issue is not related to the port. I compile and update all the support libraries independent of OpenSG. Especially, OpenEXR is compiled as a dynamic link library in my setup. Therefore the OPENEXR_DLL flag must be set. However, the OSGConfigurePackages.cmake forces the OPENEXR_USE_DLL option to be OFF which in turn forces not to the the OPENEXT_DLL flag. Currently, I change the generated CMakeCache.txt file, but it would be fine to have at least an option for the flag. No other problems so far... Best, Johannes |