Johannes Brunen
2014-08-08 10:24:20 UTC
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
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