[osg-users] undefined symbol in osgdb_dae.so
Jeremy Moles
jeremy at emperorlinux.com
Mon Dec 3 13:40:11 PST 2007
OKAY! Here's how I got this to work... (Both using "shared" and "static"
modes)
1. Latest SVN Collada built using: make RELEASE=1
2. Latest SVN Collada installed using: sudo make RELEASE=1
(sudo was used since the Collada project doesn't seem
to have a PREFIX option, and I generally install to ~/local,
so that sucks. Anyway...)
NOTE: They don't install symlinks using the Makefile, which
puts 3 exact copies of the same library in /usr/lib. Yuck.
3. I ran ccmake. As per README.txt in the Collada/osgPlugins
dir, two variables were undetected and defined as -NOTFOUND.
4. I set COLLADA_INCLUDE_DIR to /usr/include/collada
------------------- FOR SHARED MODE ---------------------------
5. I set COLLADA_LIBRARY to /usr/lib/libcollada_dom_shared.so
6. I edited CMakeLists.txt in src/osgPlugins/dae and changed
collada_dae and collada_dom on line 27 to collada_dae_shared
and collada_dom_shared.
NOTE: This is where the bug is in shared mode (the lack of _shared)
------------------- FOR STATIC MODE ---------------------------
5. I set COLLADA_LIBRARY to /usr/lib/libcollada_dom.a
6. I edited CMakeLists.txt in src/osgPlugins/dae and added pcrecpp
to the linked in libraries.
NOTE: This did not work when I used libcollada_dae.a, which
might explain some of your problem when trying this fix yourself.
At any rate, it looks like the build is broken using latest OSG and
Collada, so I'm not quite sure how anyone has been using it unless
they're using old versions or--may the gods forbid--Windows. My CMake
skills are improving, so I may be able to introduce a stronger
CMakeLlists.txt file for Robert to include, but it'll have to be
tomorrow. The stuff above should work in the interim.
Enjoy!
More information about the osg-users
mailing list