I finished this first build test (static core libs + shared plugin libs): two remarks:
1) the example osgDepthShadow won't compile: [ 88%] Building CXX object examples/osgdepthshadow/CMakeFiles/example_osgdepthshadow.dir/osgdepthshadow.o Linking CXX executable ../../bin/osgdepthshadow /home/kenshin/dev/libraries/linux32/gcc-4.1.2/OpenSceneGraph-1.9.5 /lib/libosgShadow.a(ShadowMap.o):(.data+0x0): multiple definition of `fragmentShaderSource_noBaseTexture' CMakeFiles/example_osgdepthshadow.dir/osgdepthshadow.o:(.data+0x0): first defined here /home/kenshin/dev/libraries/linux32/gcc-4.1.2/OpenSceneGraph-1.9.5 /lib/libosgShadow.a(ShadowMap.o):(.data+0xe0): multiple definition of `fragmentShaderSource_withBaseTexture' CMakeFiles/example_osgdepthshadow.dir/osgdepthshadow.o:(.data+0xe0): first defined here collect2: ld a retourné 1 code d'état d'exécution make[2]: *** [bin/osgdepthshadow] Erreur 1 .. obviously this is linked to the static build process... 2) I have the same problem than I had under WinXP at the beginning: when I try to run osganimate I get: [EMAIL PROTECTED] bin]$ ./osganimate Warning: Could not find plugin to read objects from file "glider.osg". Warning: Could not find plugin to read objects from file "cessna.osg". View::setUpViewAcrossAllScreens() : Error, no WindowSystemInterface available, cannot create windows. Viewer::realize() - failed to set up any windows --> the auto referencing of the GraphicWindowX11 interface doesn't happen neither :-) By the way, Is someone else working on this static build process or am I on my own... ? I guess I have to find out a bit more about CMake and linux symbols anyway... regards, Manu. 2007/5/23, Emmanuel Roche < [EMAIL PROTECTED]>:
Hello ! I'm trying to build this release of OSG on linux this time. First thing noticable: the plugins are still built as shared libraries (in mode OPENSCENEGRAPH_DYNAMIC=OFF)... is this normal ?? I've got a question any way: On windows, when I was trying to use .dll for the plugins mixed with static core libraries it didn't work: I'm not un expert, but I guess this could have something to do with static objects in osgDB.lib existing in two places (the application and the plugin) and not being shared as one would expect (please tell me if this explanation is totally wrong :-) ). So I came to the conclusion that everything must be shared or static... is this still true under linux with gcc ??? if it is, then it means we have to build static plugin libs and then to force the compiler to include the needed symbols again... (correct me if I'm wrong but I think that current gcc versions (4.1 at least...) perform function level linking by default). Does anyone know how to retrieve the symbol list from the librairy ? (ie: what is the corresponding command for MS " dumpbin.exe" ? :-)) still if my previous assumption is true for linux, could someone just tell me what should be changed in order to built static plugin libs in the Cmake files ? Now, if this assumption is wrong, it would mean that I should expect this current compilation (static core libs + shared plugin libs) to work just fine ? regards, Manu.
_______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
