[osg-users] Build Error on Windows

Mark Sciabica msciabica at itracs.com
Fri Mar 20 17:55:47 PDT 2009


Hello all,

I'd like to report a build error I encountered on Windows using CMake 
2.4 and default CMAKE_INSTALL_PREFIX. The default value for the install 
prefix is "C:/Program Files/OpenSceneGraph" (without the quotes). The 
space in the path appears to confuse CMake when generating the project 
file for osgDB. The problematic CMake source line is:

    
ADD_DEFINITIONS(-DOSG_DEFAULT_LIBRARY_PATH=${CMAKE_INSTALL_PREFIX}/lib${LIB_POSTFIX}/${OSG_PLUGINS})

CMake splits this line at the space, creating an output line of  
"-DOSG_DEFAULT_LIBRARY_PATH=C:/Program" plus an additional compiler 
option of "Files/OpenSceneGraph/lib/osgPlugins-2.8.0". The compiler 
tries to compile this as a file and throws an error. Putting quotes 
around the string for the CMAKE_INSTALL_PREFIX option fixes the problem.

In addition to noting this build problem, I would like to question the 
desirability of storing the install path in the binary. The users of my 
software certainly won't be installing OSG in a fixed path determined at 
the time I compile the software, so best case here is a useless check of 
a nonexistent directory. Worst case is that another build of OSG is in 
that directory with plugins built with incompatible compiler options, 
leading to a crash. I suggest removing this osg default library path or 
having an option to disable it (preferably with disabled being the default).

Regards,

Mark



More information about the osg-users mailing list