Hello Alisan,

First, please don't reply to a digest, it messes up threading. I replied to my own message so that our discussion stays on the same thread. Please sign up to the list in non-digest mode and reply to the right message.

In fact I dont want to use Cmake .I want to build an example project with visual studio and modify it for my own project.Can you explain step by step how can I create a working project from an example on visual studio?

Well, if you have OSG binaries (I assume 2.4 since I'm not aware of anyone who made and distributed 2.6 binaries) then you can just make a simple Visual Studio project. Note that I would not normally give this kind of extensive step-by-step. You really need to understand your tools before trying something like this, so I'd recommend you start with a simple project, then try to link in one simple library, etc. But I know you're on a tight deadline, so ... here we go.

1. Create a new project using the "Empty project" template. Place it wherever you want. 2. Copy the source file of the example you want to modify to the folder where you created the project. 3. In your project, right-click on your project and select "Add - Existing item" and select your source file. 4. I will assume you created the environment variables I mentioned in my previous post, but if not just use the whole paths in the following steps.
5. Right-click your project, click Properties.
6. Select "All configurations" from the Configuration drop-down.
7. Expand the C/C++ section on the left, and click on General.
8. In the "Additional Include Directories" section, put the path to your OSG include directory, like ...\OpenSceneGraph\include or $(OSG_INCLUDE_PATH) 9. Click on Preprocessor on the left, and in "Preprocessor Definitions" add "WIN32;_WIN32;_DEBUG" without the quotes (we'll change that last one for release later)
10. Expand the Linker section on the left, and click on General.
11. In "Additional library directories", put the path to your OSG libraries (.lib files), like ...\OpenSceneGraph\lib or $(OSG_LIB_PATH) 12. Click on Input on the left, and in "Additional Dependencies", add "osgd.lib osgDBd.lib osgUtild.lib osgGAd.lib osgViewerd.lib osgTextd.lib" without the quotes. Add any others you will need. Later, if you get any linker errors, add others as needed. (we'll remove the 'd' suffixes for release later)
13. Change the Configuration to "Release" at the top.
14. Go back to C/C++ - Preprocessor, and change _DEBUG to NDEBUG in the Preprocessor Definitions. 15. Go back to Linker - Input, and remove the 'd' suffixes from all the lib names (so they become osg.lib osgDB.lib etc.)

Click OK, and you should be able to do a build with F7. As I said above, if you get any linker errors, add the relevant OSG libraries then For example, if you get a linker error saying that osgManipulator::Dragger isn't defined, add osgManipulator.lib (release) and osgManipulatord.lib (debug) in Project Properties - Linker - Input.

When running your app, if it says it can't find the DLLs, then you need to add your OSG bin directory (where the osg DLLs are) to your PATH. You can do that system-wide or in your project properties : Right-click on the project, go to Properties, select all configurations, click on Debugging on the left, and in the "Environment" field, put "PATH=$(PATH);<your OSG directory>\bin" without the quotes.

If it still says it can't find a DLL then, it might be the dependencies' DLLs. You can copy those to your OSG bin directory and they will be found.

If you need more info, I suggest you look on the OSG web site. In particular, this page explains how to build OSG with Visual Studio (the "Compiling with Visual Studio .NET" section), and also explains everything I explained here (the "Starting a new project" section).

http://www.openscenegraph.org/projects/osg/wiki/Support/PlatformSpecifics/VisualStudio

Hope this helps,

J-S
--
______________________________________________________
Jean-Sebastien Guay    [email protected]
                               http://www.cm-labs.com/
                        http://whitestar02.webhop.org/
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to