[osg-users] [build] Build problem with gdk-x11-2.0
Hi, I'm trying to build OpenSceneGraph on a SUSE system. Attempts to make version 2.8 and 2.9.2 both yield the following error. Any suggestions? Thanks! -- [ 99%] Built target osgdb_svg Linking CXX shared module ../../../lib/osgPlugins-2.8.0/osgdb_pdf.so /usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/bin/ld: cannot find -lgdk-x11-2.0 collect2: ld returned 1 exit status make[2]: *** [lib/osgPlugins-2.8.0/osgdb_pdf.so] Error 1 make[1]: *** [src/osgPlugins/pdf/CMakeFiles/osgdb_pdf.dir/all] Error 2 make: *** [all] Error 2 -- N.B. libgdk-x11-2.0.so.0 is there in the /opt/gnome/lib64 directory, where it's supposed to be according to CMakeCache.txt. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9552#9552 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Build problem with gdk-x11-2.0
On Wed, Apr 1, 2009 at 1:28 PM, Harry Plantinga wrote: > Hi, > > I'm trying to build OpenSceneGraph on a SUSE system. Attempts to make > version 2.8 and 2.9.2 both yield the following error. Any suggestions? > > Thanks! > > -- > [ 99%] Built target osgdb_svg > Linking CXX shared module ../../../lib/osgPlugins-2.8.0/osgdb_pdf.so > /usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/bin/ld: > cannot find -lgdk-x11-2.0 > collect2: ld returned 1 exit status > make[2]: *** [lib/osgPlugins-2.8.0/osgdb_pdf.so] Error 1 > make[1]: *** [src/osgPlugins/pdf/CMakeFiles/osgdb_pdf.dir/all] Error 2 > make: *** [all] Error 2 > -- > > N.B. libgdk-x11-2.0.so.0 is there in the /opt/gnome/lib64 directory, where > it's supposed to be according to CMakeCache.txt. Do you have the libgdk development packages installed for your distribution? There should be a libgdk-x11-2.0.so symbolic link (without .0) somewhere in /opt/gnome/lib64 along with header files. On Linux systems build systems like automake and CMake never search for versioned shared libraries directly but rather resolve the symbolic link "libfoo.so"=>"libfoo.so.1" to know that "libfoo.so.1" is needed at runtime. Development packages that provide header files usually provide ".so" symbolic links or just plain ".so" files if versioning is not being used. OSG's cmake scripts should probably be telling you about this problem at configure time (this may be a build system bug). -- Philip Lowman ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Build problem with gdk-x11-2.0
Yes, there is a symbolic link: libgdk-x11-2.0.so -> libgdk-x11-2.0.so.0.1000.6 libgdk-x11-2.0.so.0 -> libgdk-x11-2.0.so.0.1000.6 libgdk-x11-2.0.so.0.1000.6 Harry -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9639#9639 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Build problem with gdk-x11-2.0
I ran into the same issue on an OpenSuSE 10.2 x86_64 system when working with Stable Release 2.8.0 of osg. In case it's of help to anyone, I can offer that the following workaround helped me past the problem: Despite /opt/gnome/lib64 being in my system's ld.so.conf, the link step apparently failed to find libgdk-x11-2.0.so in that directory when attempting to produce osgPlugins-2.8.0/osgdb_pdf.so. Manually modifying the link.txt file (originally created by the invocation of cmake in the top-level configure script) in the OpenSceneGraph-2.8.0/src/osgPlugins/pdf/CMakeFiles/osgdb_pdf.dir/ directory to insert "-L/opt/gnome/lib64" in front of the references to gdk-x11-2.0 manages to get the c++ linker to find the library. After such modification that file, typing "make" again causes the build to pick up where it left off and run through to successful completion. Hope this proves helpful. I have not tried building the 2.8.1-rc3 code that's currently available to see if this issue is reproducible there. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=11316#11316 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Build problem with gdk-x11-2.0
Hi Davin, One should use CMake to set up the paths correctly rather than have to edit the link.txt, so the fact you needed to do this suggests that either the required libs were found correctly, or that the pdf/CMakeLists.txt is missing a search path. What values does Cmake report for the gdk libs? Robert. On Mon, May 4, 2009 at 9:25 PM, Davin wrote: > > I ran into the same issue on an OpenSuSE 10.2 x86_64 system when working with > Stable Release 2.8.0 of osg. In case it's of help to anyone, I can offer > that the following workaround helped me past the problem: > > Despite /opt/gnome/lib64 being in my system's ld.so.conf, the link step > apparently failed to find libgdk-x11-2.0.so in that directory when attempting > to produce osgPlugins-2.8.0/osgdb_pdf.so. Manually modifying the link.txt > file (originally created by the invocation of cmake in the top-level > configure script) in the > OpenSceneGraph-2.8.0/src/osgPlugins/pdf/CMakeFiles/osgdb_pdf.dir/ directory > to insert "-L/opt/gnome/lib64" in front of the references to gdk-x11-2.0 > manages to get the c++ linker to find the library. After such modification > that file, typing "make" again causes the build to pick up where it left off > and run through to successful completion. > > Hope this proves helpful. I have not tried building the 2.8.1-rc3 code > that's currently available to see if this issue is reproducible there. > > -- > Read this topic online here: > http://forum.openscenegraph.org/viewtopic.php?p=11316#11316 > > > > > > ___ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Build problem with gdk-x11-2.0
Hi Robert -- My CMake-foo is weak, so a bit of hand-holding is appreciated in finding the info you seek. Agreed whole-heartedly with your comment about the right way to fix the problem I encountered -- my low comfort level with CMake led me to stumble onto the quick and dirty workaround I described. What I can offer is this: * in the svg plugin, the libgdk*.so libraries appear to be successfully referenced and linked in as seen in that plugin's link.txt where "-L/opt/gnome/lib64" appears in the CMake-generated version of that file (i.e. I didn't touch that one at all) * in the problematic pdf plugin's CMakeLists.txt, I see POPPLER_LIB_DIRS referenced like this: LINK_DIRECTORIES(${CAIRO_LIBRARY_DIRS} ${POPPLER_LIB_DIRS}) * looking in the top-level CMakeCache.txt, I can find no such POPPLER_LIB_DIRS definition however I do find that both POPPLER_LDFLAGS and POPPLER_LIBRARY_DIRS contain references to /opt/gnome/lib64 (the link directory I needed for the pdf plugin to build on my particular system) in their definitions; in particular, this line: POPPLER_LIBRARY_DIRS:INTERNAL=/opt/gnome/lib64 I do not know if POPPLER_LIB_DIRS should be replaced with POPPLER_LIBRARY_DIRS, but I hope the above proves helpful. Please guide me to dig for more information -- I'm happy to help. Davin -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=11530#11530 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Build problem with gdk-x11-2.0
On Wed, May 6, 2009 at 12:33 PM, Davin wrote: > I do not know if POPPLER_LIB_DIRS should be replaced with > POPPLER_LIBRARY_DIRS, but I hope the above proves helpful. Yes that looks like a simple typo. Replacing POPPLER_LIB_DIRS with POPPLER_LIBRARY_DIRS should fix your problem (can you confirm that?). Apparantly not a lot of people build this plugin without it being located in /usr/lib otherwise someone would have caught this earlier. What you're seeing is the result of a function call into CMake's FindPkgConfig module made in the root CMakeLists.txt of OSG (search for POPPLER). The function provides _LIBRARY_DIRS: http://www.cmake.org/cmake/help/cmake2.6docs.html#module:FindPkgConfig -- Philip Lowman ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Build problem with gdk-x11-2.0
Hi Davin, I have just checked my CMakeCache and I too have POPPLER_LIBRARY_DIRS rather then POPPLER_LIB_DIRS that I used in the pdf/CMakeLists.txt. So it does look like POPPLER_LIBRARY_DIRS is the one to use. I've made this change and checked into svn/trunk. The file is also attached. Could you let me know if this change helps. Cheers, Robert. On Wed, May 6, 2009 at 5:33 PM, Davin wrote: > Hi Robert -- > > My CMake-foo is weak, so a bit of hand-holding is appreciated in finding the > info you seek. > > Agreed whole-heartedly with your comment about the right way to fix the > problem I encountered -- my low comfort level with CMake led me to stumble > onto the quick and dirty workaround I described. > > What I can offer is this: > * in the svg plugin, the libgdk*.so libraries appear to be successfully > referenced and linked in as seen in that plugin's link.txt where > "-L/opt/gnome/lib64" appears in the CMake-generated version of that file > (i.e. I didn't touch that one at all) > * in the problematic pdf plugin's CMakeLists.txt, I see POPPLER_LIB_DIRS > referenced like this: > LINK_DIRECTORIES(${CAIRO_LIBRARY_DIRS} ${POPPLER_LIB_DIRS}) > * looking in the top-level CMakeCache.txt, I can find no such > POPPLER_LIB_DIRS definition however I do find that both POPPLER_LDFLAGS and > POPPLER_LIBRARY_DIRS contain references to /opt/gnome/lib64 (the link > directory I needed for the pdf plugin to build on my particular system) in > their definitions; in particular, this line: > POPPLER_LIBRARY_DIRS:INTERNAL=/opt/gnome/lib64 > > I do not know if POPPLER_LIB_DIRS should be replaced with > POPPLER_LIBRARY_DIRS, but I hope the above proves helpful. > > Please guide me to dig for more information -- I'm happy to help. > > > Davin > > -- > Read this topic online here: > http://forum.openscenegraph.org/viewtopic.php?p=11530#11530 > > > > > > ___ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > SET(TARGET_SRC ReaderWriterPDF.cpp ) INCLUDE_DIRECTORIES( ${CAIRO_INCLUDE_DIRS} ${POPPLER_INCLUDE_DIRS} ) LINK_DIRECTORIES(${CAIRO_LIBRARY_DIRS} ${POPPLER_LIBRARY_DIRS}) SET(TARGET_EXTERNAL_LIBRARIES ${CAIRO_LIBRARIES} ${POPPLER_LIBRARIES} ) SET(TARGET_ADDED_LIBRARIES osgWidget) end var setup ### SETUP_PLUGIN(pdf pdf) ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Build problem with gdk-x11-2.0
Hi Robert -- Confirmed -- that change works for me. Thanks, Davin -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=11732#11732 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org