Amar Dinsa
2012-01-05 01:04:01 UTC
Hi,
I'm interested in using OSG for a project but am having difficulty compiling the example applications. I am running Ubuntu linux and installed the binaries through the package manager and also built the source. I am able to run the osgversion command as the OSG Quick Start Guide instructs but cannot compile an example program.
For example, to compile the sample "osglogo" program, I try running the command:
Code:
g++ -I/usr/local/include/ -L/usr/local/lib/ -losgViewer -losgDB -losgUtil -losg osglogo.cpp
Which is what the Quick Start Guide says to do. I do indeed have the osg header files in the /usr/local/include/osg* directories and library files in /usr/local/lib/libosg*.
I also appended "/usr/local/lib" to my /etc/ld.so.conf file and ran ldconfig, but I am still receiving this lengthy compiler message:
Code:
/tmp/ccQ8pJfi.o: In function `createWing(osg::Vec3f const&, osg::Vec3f const&, osg::Vec3f const&, float, osg::Vec4f const&)':
osglogo.cpp:(.text+0x1d): undefined reference to `osg::Geometry::Geometry()'
osglogo.cpp:(.text+0x2cb): undefined reference to `osg::Geometry::setVertexArray(osg::Array*)'
osglogo.cpp:(.text+0x30e): undefined reference to `osg::Geometry::setNormalArray(osg::Array*)'
osglogo.cpp:(.text+0x321): undefined reference to `osg::Geometry::setNormalBinding(osg::Geometry::AttributeBinding)'
osglogo.cpp:(.text+0x361): undefined reference to `osg::Geometry::setColorArray(osg::Array*)'
osglogo.cpp:(.text+0x374): undefined reference to `osg::Geometry::setColorBinding(osg::Geometry::AttributeBinding)'
osglogo.cpp:(.text+0x3c9): undefined reference to `osg::Geometry::addPrimitiveSet(osg::PrimitiveSet*)'
osglogo.cpp:(.text+0x3d7): undefined reference to `osgUtil::Tessellator::Tessellator()'
osglogo.cpp:(.text+0x3ec): undefined reference to `osgUtil::Tessellator::retessellatePolygons(osg::Geometry&)'
osglogo.cpp:(.text+0x3fd): undefined reference to `osgUtil::Tessellator::~Tessellator()'
osglogo.cpp:(.text+0x47a): undefined reference to `osgUtil::Tessellator::~Tessellator()'
/tmp/ccQ8pJfi.o: In function `createTextBelow(osg::BoundingBoxImpl<osg::Vec3f> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
osglogo.cpp:(.text+0x4a2): undefined reference to `osg::Geode::Geode()'
osglogo.cpp:(.text+0x4eb): undefined reference to `osgText::Text::Text()'
osglogo.cpp:(.text+0x524): undefined reference to `osgText::TextBase::setFontResolution(unsigned int, unsigned int)'
osglogo.cpp:(.text+0x537): undefined reference to `osgText::TextBase::setAlignment(osgText::TextBase::AlignmentType)'
osglogo.cpp:(.text+0x54a): undefined reference to `osgText::TextBase::setAxisAlignment(osgText::TextBase::AxisAlignment)'
osglogo.cpp:(.text+0x5ca): undefined reference to `osgText::TextBase::setPosition(osg::Vec3f const&)'
osglogo.cpp:(.text+0x60b): undefined reference to `osgText::TextBase::setColor(osg::Vec4f const&)'
osglogo.cpp:(.text+0x61d): undefined reference to `osgText::TextBase::setText(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/ccQ8pJfi.o: In function `createTextLeft(osg::BoundingBoxImpl<osg::Vec3f> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
osglogo.cpp:(.text+0x6be): undefined reference to `osg::Geode::Geode()'
osglogo.cpp:(.text+0x6cc): undefined reference to `osg::Node::getOrCreateStateSet()'
osglogo.cpp:(.text+0x6ea): undefined reference to `osg::StateSet::setMode(unsigned int, unsigned int)'
osglogo.cpp:(.text+0x730): undefined reference to `osgText::Text::Text()'
osglogo.cpp:(.text+0x769): undefined reference to `osgText::TextBase::setFontResolution(unsigned int, unsigned int)'
osglogo.cpp:(.text+0x77c): undefined reference to `osgText::TextBase::setAlignment(osgText::TextBase::AlignmentType)'
osglogo.cpp:(.text+0x78f): undefined reference to `osgText::TextBase::setAxisAlignment(osgText::TextBase::AxisAlignment)'
osglogo.cpp:(.text+0x7c0): undefined reference to `osgText::TextBase::setCharacterSize(float)'
osglogo.cpp:(.text+0x8aa): undefined reference to `osgText::TextBase::setPosition(osg::Vec3f const&)'
osglogo.cpp:(.text+0x8f1): undefined reference to `osgText::TextBase::setColor(osg::Vec4f const&)'
osglogo.cpp:(.text+0x903): undefined reference to `osgText::TextBase::setText(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
osglogo.cpp:(.text+0x916): undefined reference to `osgText::Text::setBackdropType(osgText::Text::BackdropType)'
osglogo.cpp:(.text+0x929): undefined reference to `osgText::Text::setBackdropImplementation(osgText::Text::BackdropImplementation)'
osglogo.cpp:(.text+0x93d): undefined reference to `osgText::Text::setBackdropOffset(float)'
osglogo.cpp:(.text+0x984): undefined reference to `osgText::Text::setBackdropColor(osg::Vec4f const&)'
osglogo.cpp:(.text+0x997): undefined reference to `osgText::Text::setColorGradientMode(osgText::Text::ColorGradientMode)'
osglogo.cpp:(.text+0xa2e): undefined reference to `osgText::Text::setColorGradientCorners(osg::Vec4f const&, osg::Vec4f const&, osg::Vec4f const&, osg::Vec4f const&)'
osglogo.cpp:(.text+0xa73): undefined reference to `osgText::Text::Text()'
osglogo.cpp:(.text+0xaa3): undefined reference to `osgText::TextBase::setText(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
osglogo.cpp:(.text+0xab6): undefined reference to `osgText::TextBase::setAlignment(osgText::TextBase::AlignmentType)'
osglogo.cpp:(.text+0xac9): undefined reference to `osgText::TextBase::setAxisAlignment(osgText::TextBase::AxisAlignment)'
osglogo.cpp:(.text+0xbbb): undefined reference to `osgText::TextBase::setPosition(osg::Vec3f const&)'
osglogo.cpp:(.text+0xbfc): undefined reference to `osgText::TextBase::setColor(osg::Vec4f const&)'
/tmp/ccQ8pJfi.o: In function `createGlobe(osg::BoundingBoxImpl<osg::Vec3f> const&, float, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
osglogo.cpp:(.text+0xcac): undefined reference to `osg::MatrixTransform::MatrixTransform()'
osglogo.cpp:(.text+0xd61): undefined reference to `osg::AnimationPathCallback::AnimationPathCallback(osg::Vec3d const&, osg::Vec3d const&, float)'
osglogo.cpp:(.text+0xd70): undefined reference to `osg::Node::setUpdateCallback(osg::NodeCallback*)'
osglogo.cpp:(.text+0xe4f): undefined reference to `osg::MatrixTransform::MatrixTransform()'
osglogo.cpp:(.text+0xfce): undefined reference to `osg::Geode::Geode()'
osglogo.cpp:(.text+0xfdc): undefined reference to `osg::Node::getOrCreateStateSet()'
osglogo.cpp:(.text+0x1044): undefined reference to `osg::Texture2D::Texture2D()'
osglogo.cpp:(.text+0x1059): undefined reference to `osg::Texture2D::setImage(osg::Image*)'
osglogo.cpp:(.text+0x106d): undefined reference to `osg::Texture::setMaxAnisotropy(float)'
osglogo.cpp:(.text+0x108f): undefined reference to `osg::StateSet::setTextureAttributeAndModes(unsigned int, osg::StateAttribute*, unsigned int)'
osglogo.cpp:(.text+0x10a5): undefined reference to `osg::Material::Material()'
osglogo.cpp:(.text+0x10c2): undefined reference to `osg::StateSet::setAttribute(osg::StateAttribute*, unsigned int)'
osglogo.cpp:(.text+0x1140): undefined reference to `osg::ShapeDrawable::ShapeDrawable(osg::Shape*, osg::TessellationHints*)'
/tmp/ccQ8pJfi.o: In function `createBox(osg::BoundingBoxImpl<osg::Vec3f> const&, float)':
osglogo.cpp:(.text+0x12eb): undefined reference to `osg::Geode::Geode()'
/tmp/ccQ8pJfi.o: In function `createBoxNo5(osg::BoundingBoxImpl<osg::Vec3f> const&, float)':
osglogo.cpp:(.text+0x1b15): undefined reference to `osg::Geode::Geode()'
/tmp/ccQ8pJfi.o: In function `createBoxNo5No2(osg::BoundingBoxImpl<osg::Vec3f> const&, float)':
osglogo.cpp:(.text+0x2144): undefined reference to `osg::Geode::Geode()'
/tmp/ccQ8pJfi.o: In function `createBackdrop(osg::Vec3f const&, osg::Vec3f const&, osg::Vec3f const&)':
osglogo.cpp:(.text+0x23de): undefined reference to `osg::Geometry::Geometry()'
osglogo.cpp:(.text+0x24f9): undefined reference to `osg::Geometry::setVertexArray(osg::Array*)'
osglogo.cpp:(.text+0x2539): undefined reference to `osg::Geometry::setNormalArray(osg::Array*)'
osglogo.cpp:(.text+0x254c): undefined reference to `osg::Geometry::setNormalBinding(osg::Geometry::AttributeBinding)'
osglogo.cpp:(.text+0x25bb): undefined reference to `osg::Geometry::setColorArray(osg::Array*)'
osglogo.cpp:(.text+0x25ce): undefined reference to `osg::Geometry::setColorBinding(osg::Geometry::AttributeBinding)'
osglogo.cpp:(.text+0x2623): undefined reference to `osg::Geometry::addPrimitiveSet(osg::PrimitiveSet*)'
osglogo.cpp:(.text+0x2639): undefined reference to `osg::Geode::Geode()'
/tmp/ccQ8pJfi.o: In function `createLogo(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
osglogo.cpp:(.text+0x2770): undefined reference to `osg::Group::Group()'
osglogo.cpp:(.text+0x27c2): undefined reference to `osg::Quat::makeRotate(double, double, double, double)'
osglogo.cpp:(.text+0x27f3): undefined reference to `osg::Quat::makeRotate(double, double, double, double)'
osglogo.cpp:(.text+0x2a20): undefined reference to `osg::ClearNode::ClearNode()'
osglogo.cpp:(.text+0x2a80): undefined reference to `osg::Group::Group()'
osglogo.cpp:(.text+0x2a8e): undefined reference to `osg::Node::getOrCreateStateSet()'
osglogo.cpp:(.text+0x2aac): undefined reference to `osg::StateSet::setMode(unsigned int, unsigned int)'
/tmp/ccQ8pJfi.o: In function `main':
osglogo.cpp:(.text+0x2b64): undefined reference to `osg::ArgumentParser::ArgumentParser(int*, char**)'
osglogo.cpp:(.text+0x2b69): undefined reference to `osg::DisplaySettings::instance()'
osglogo.cpp:(.text+0x2b8d): undefined reference to `osgViewer::Viewer::Viewer()'
osglogo.cpp:(.text+0x2bf1): undefined reference to `osg::ArgumentParser::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
osglogo.cpp:(.text+0x2c4a): undefined reference to `osg::ArgumentParser::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
osglogo.cpp:(.text+0x2cef): undefined reference to `osg::ApplicationUsage::write(std::basic_ostream<char, std::char_traits<char> >&, unsigned int, unsigned int, bool)'
osglogo.cpp:(.text+0x2dd6): undefined reference to `osg::ArgumentParser::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
osglogo.cpp:(.text+0x2e20): undefined reference to `osgGetVersion'
osglogo.cpp:(.text+0x2ea4): undefined reference to `osg::ArgumentParser::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osg::ArgumentParser::Parameter)'
osglogo.cpp:(.text+0x2f3d): undefined reference to `osg::ArgumentParser::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osg::ArgumentParser::Parameter)'
osglogo.cpp:(.text+0x30d8): undefined reference to `osgViewer::Viewer::setSceneData(osg::Node*)'
osglogo.cpp:(.text+0x30e4): undefined reference to `osgViewer::Viewer::run()'
osglogo.cpp:(.text+0x311f): undefined reference to `osgViewer::Viewer::~Viewer()'
osglogo.cpp:(.text+0x32db): undefined reference to `osgViewer::Viewer::~Viewer()'
/tmp/ccQ8pJfi.o: In function `osg::Referenced::ref() const':
osglogo.cpp:(.text._ZNK3osg10Referenced3refEv[osg::Referenced::ref() const]+0x10): undefined reference to `OpenThreads::Atomic::operator++()'
/tmp/ccQ8pJfi.o: In function `osg::Referenced::unref() const':
osglogo.cpp:(.text._ZNK3osg10Referenced5unrefEv[osg::Referenced::unref() const]+0x10): undefined reference to `OpenThreads::Atomic::operator--()'
osglogo.cpp:(.text._ZNK3osg10Referenced5unrefEv[osg::Referenced::unref() const]+0x3e): undefined reference to `osg::Referenced::signalObserversAndDelete(bool, bool) const'
/tmp/ccQ8pJfi.o: In function `osg::Object::Object()':
osglogo.cpp:(.text._ZN3osg6ObjectC2Ev[_ZN3osg6ObjectC5Ev]+0xe): undefined reference to `osg::Referenced::Referenced()'
osglogo.cpp:(.text._ZN3osg6ObjectC2Ev[_ZN3osg6ObjectC5Ev]+0x17): undefined reference to `vtable for osg::Object'
osglogo.cpp:(.text._ZN3osg6ObjectC2Ev[_ZN3osg6ObjectC5Ev]+0x4c): undefined reference to `osg::Referenced::~Referenced()'
/tmp/ccQ8pJfi.o: In function `osg::Object::Object(bool)':
osglogo.cpp:(.text._ZN3osg6ObjectC2Eb[_ZN3osg6ObjectC5Eb]+0x1c): undefined reference to `osg::Referenced::Referenced(bool)'
osglogo.cpp:(.text._ZN3osg6ObjectC2Eb[_ZN3osg6ObjectC5Eb]+0x25): undefined reference to `vtable for osg::Object'
osglogo.cpp:(.text._ZN3osg6ObjectC2Eb[_ZN3osg6ObjectC5Eb]+0x5a): undefined reference to `osg::Referenced::~Referenced()'
/tmp/ccQ8pJfi.o: In function `osg::Matrixd::Matrixd()':
osglogo.cpp:(.text._ZN3osg7MatrixdC2Ev[_ZN3osg7MatrixdC5Ev]+0xd): undefined reference to `osg::Matrixd::makeIdentity()'
/tmp/ccQ8pJfi.o: In function `osg::Matrixd::operator*(osg::Matrixd const&) const':
osglogo.cpp:(.text._ZNK3osg7MatrixdmlERKS0_[osg::Matrixd::operator*(osg::Matrixd const&) const]+0x27): undefined reference to `osg::Matrixd::mult(osg::Matrixd const&, osg::Matrixd const&)'
/tmp/ccQ8pJfi.o: In function `osg::Matrixd::scale(double, double, double)':
osglogo.cpp:(.text._ZN3osg7Matrixd5scaleEddd[osg::Matrixd::scale(double, double, double)]+0x52): undefined reference to `osg::Matrixd::makeScale(double, double, double)'
/tmp/ccQ8pJfi.o: In function `osg::Matrixd::translate(double, double, double)':
osglogo.cpp:(.text._ZN3osg7Matrixd9translateEddd[osg::Matrixd::translate(double, double, double)]+0x52): undefined reference to `osg::Matrixd::makeTranslate(double, double, double)'
/tmp/ccQ8pJfi.o: In function `osg::Matrixd::preMultRotate(osg::Quat const&)':
osglogo.cpp:(.text._ZN3osg7Matrixd13preMultRotateERKNS_4QuatE[osg::Matrixd::preMultRotate(osg::Quat const&)]+0x38): undefined reference to `osg::Matrixd::setRotate(osg::Quat const&)'
osglogo.cpp:(.text._ZN3osg7Matrixd13preMultRotateERKNS_4QuatE[osg::Matrixd::preMultRotate(osg::Quat const&)]+0x4d): undefined reference to `osg::Matrixd::preMult(osg::Matrixd const&)'
/tmp/ccQ8pJfi.o: In function `osg::BufferData::BufferData()':
osglogo.cpp:(.text._ZN3osg10BufferDataC2Ev[_ZN3osg10BufferDataC5Ev]+0x1e): undefined reference to `vtable for osg::BufferData'
/tmp/ccQ8pJfi.o: In function `osg::BufferData::BufferData(osg::BufferData const&, osg::CopyOp const&)':
osglogo.cpp:(.text._ZN3osg10BufferDataC2ERKS0_RKNS_6CopyOpE[_ZN3osg10BufferDataC5ERKS0_RKNS_6CopyOpE]+0x1c): undefined reference to `osg::Object::Object(osg::Object const&, osg::CopyOp const&)'
osglogo.cpp:(.text._ZN3osg10BufferDataC2ERKS0_RKNS_6CopyOpE[_ZN3osg10BufferDataC5ERKS0_RKNS_6CopyOpE]+0x25): undefined reference to `vtable for osg::BufferData'
osglogo.cpp:(.text._ZN3osg10BufferDataC2ERKS0_RKNS_6CopyOpE[_ZN3osg10BufferDataC5ERKS0_RKNS_6CopyOpE]+0x7c): undefined reference to `osg::Object::~Object()'
/tmp/ccQ8pJfi.o: In function `osg::Array::Array(osg::Array::Type, int, unsigned int)':
osglogo.cpp:(.text._ZN3osg5ArrayC2ENS0_4TypeEij[_ZN3osg5ArrayC5ENS0_4TypeEij]+0x16): undefined reference to `vtable for osg::Array'
/tmp/ccQ8pJfi.o: In function `osg::Array::Array(osg::Array const&, osg::CopyOp const&)':
osglogo.cpp:(.text._ZN3osg5ArrayC2ERKS0_RKNS_6CopyOpE[_ZN3osg5ArrayC5ERKS0_RKNS_6CopyOpE]+0x24): undefined reference to `vtable for osg::Array'
/tmp/ccQ8pJfi.o: In function `osg::Array::isSameKindAs(osg::Object const*) const':
osglogo.cpp:(.text._ZNK3osg5Array12isSameKindAsEPKNS_6ObjectE[osg::Array::isSameKindAs(osg::Object const*) const]+0x19): undefined reference to `typeinfo for osg::Array'
osglogo.cpp:(.text._ZNK3osg5Array12isSameKindAsEPKNS_6ObjectE[osg::Array::isSameKindAs(osg::Object const*) const]+0x21): undefined reference to `typeinfo for osg::Object'
/tmp/ccQ8pJfi.o: In function `osg::Array::~Array()':
osglogo.cpp:(.text._ZN3osg5ArrayD2Ev[_ZN3osg5ArrayD5Ev]+0xb): undefined reference to `vtable for osg::Array'
osglogo.cpp:(.text._ZN3osg5ArrayD2Ev[_ZN3osg5ArrayD5Ev]+0x16): undefined reference to `osg::BufferData::~BufferData()'
/tmp/ccQ8pJfi.o: In function `osg::Shape::Shape()':
osglogo.cpp:(.text._ZN3osg5ShapeC2Ev[_ZN3osg5ShapeC5Ev]+0x16): undefined reference to `vtable for osg::Shape'
/tmp/ccQ8pJfi.o: In function `osg::Sphere::Sphere(osg::Vec3f const&, float)':
osglogo.cpp:(.text._ZN3osg6SphereC2ERKNS_5Vec3fEf[_ZN3osg6SphereC5ERKNS_5Vec3fEf]+0x16): undefined reference to `vtable for osg::Sphere'
/tmp/ccQ8pJfi.o: In function `osg::PrimitiveSet::PrimitiveSet(osg::PrimitiveSet::Type, unsigned int, int)':
osglogo.cpp:(.text._ZN3osg12PrimitiveSetC2ENS0_4TypeEji[_ZN3osg12PrimitiveSetC5ENS0_4TypeEji]+0x16): undefined reference to `vtable for osg::PrimitiveSet'
/tmp/ccQ8pJfi.o: In function `osg::DrawArrays::DrawArrays(unsigned int, int, int, int)':
osglogo.cpp:(.text._ZN3osg10DrawArraysC2Ejiii[_ZN3osg10DrawArraysC5Ejiii]+0x2c): undefined reference to `vtable for osg::DrawArrays'
/tmp/ccQ8pJfi.o: In function `osg::MatrixTransform::setMatrix(osg::Matrixd const&)':
osglogo.cpp:(.text._ZN3osg15MatrixTransform9setMatrixERKNS_7MatrixdE[osg::MatrixTransform::setMatrix(osg::Matrixd const&)]+0x2f): undefined reference to `osg::Node::dirtyBound()'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::PositionAttitudeTransform(osg::PositionAttitudeTransform const&, osg::CopyOp const&)':
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransformC2ERKS0_RKNS_6CopyOpE[_ZN3osg25PositionAttitudeTransformC5ERKS0_RKNS_6CopyOpE]+0x1b): undefined reference to `osg::Transform::Transform(osg::Transform const&, osg::CopyOp const&)'
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransformC2ERKS0_RKNS_6CopyOpE[_ZN3osg25PositionAttitudeTransformC5ERKS0_RKNS_6CopyOpE]+0x24): undefined reference to `vtable for osg::PositionAttitudeTransform'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::cloneType() const':
osglogo.cpp:(.text._ZNK3osg25PositionAttitudeTransform9cloneTypeEv[osg::PositionAttitudeTransform::cloneType() const]+0x1a): undefined reference to `osg::PositionAttitudeTransform::PositionAttitudeTransform()'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::isSameKindAs(osg::Object const*) const':
osglogo.cpp:(.text._ZNK3osg25PositionAttitudeTransform12isSameKindAsEPKNS_6ObjectE[osg::PositionAttitudeTransform::isSameKindAs(osg::Object const*) const]+0x19): undefined reference to `typeinfo for osg::PositionAttitudeTransform'
osglogo.cpp:(.text._ZNK3osg25PositionAttitudeTransform12isSameKindAsEPKNS_6ObjectE[osg::PositionAttitudeTransform::isSameKindAs(osg::Object const*) const]+0x21): undefined reference to `typeinfo for osg::Object'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::setPosition(osg::Vec3d const&)':
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransform11setPositionERKNS_5Vec3dE[osg::PositionAttitudeTransform::setPosition(osg::Vec3d const&)]+0x48): undefined reference to `osg::Node::dirtyBound()'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::setAttitude(osg::Quat const&)':
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransform11setAttitudeERKNS_4QuatE[osg::PositionAttitudeTransform::setAttitude(osg::Quat const&)]+0x25): undefined reference to `osg::Node::dirtyBound()'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::setPivotPoint(osg::Vec3d const&)':
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransform13setPivotPointERKNS_5Vec3dE[osg::PositionAttitudeTransform::setPivotPoint(osg::Vec3d const&)]+0x48): undefined reference to `osg::Node::dirtyBound()'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::~PositionAttitudeTransform()':
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransformD2Ev[_ZN3osg25PositionAttitudeTransformD5Ev]+0xb): undefined reference to `vtable for osg::PositionAttitudeTransform'
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransformD2Ev[_ZN3osg25PositionAttitudeTransformD5Ev]+0x16): undefined reference to `osg::Transform::~Transform()'
/tmp/ccQ8pJfi.o: In function `osgDB::readImageFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&):
osglogo.cpp:(.text._ZN5osgDB13readImageFileERKSs[osgDB::readImageFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0xe): undefined reference to `osgDB::Registry::instance(bool)'
osglogo.cpp:(.text._ZN5osgDB13readImageFileERKSs[osgDB::readImageFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0x25): undefined reference to `osgDB::readImageFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osgDB::Options const*)'
/tmp/ccQ8pJfi.o: In function `osgDB::readNodeFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
osglogo.cpp:(.text._ZN5osgDB12readNodeFileERKSs[osgDB::readNodeFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0xe): undefined reference to `osgDB::Registry::instance(bool)'
osglogo.cpp:(.text._ZN5osgDB12readNodeFileERKSs[osgDB::readNodeFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0x25): undefined reference to `osgDB::readNodeFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osgDB::Options const*)'
/tmp/ccQ8pJfi.o: In function `MyBillboardTransform::MyBillboardTransform()':
osglogo.cpp:(.text._ZN20MyBillboardTransformC2Ev[_ZN20MyBillboardTransformC5Ev]+0xd): undefined reference to `osg::PositionAttitudeTransform::PositionAttitudeTransform()'
/tmp/ccQ8pJfi.o: In function `MyBillboardTransform::computeLocalToWorldMatrix(osg::Matrixd&, osg::NodeVisitor*) const':
osglogo.cpp:(.text._ZNK20MyBillboardTransform25computeLocalToWorldMatrixERN3osg7MatrixdEPNS0_11NodeVisitorE[MyBillboardTransform::computeLocalToWorldMatrix(osg::Matrixd&, osg::NodeVisitor*) const]+0x2e): undefined reference to `typeinfo for osgUtil::CullVisitor'
osglogo.cpp:(.text._ZNK20MyBillboardTransform25computeLocalToWorldMatrixERN3osg7MatrixdEPNS0_11NodeVisitorE[MyBillboardTransform::computeLocalToWorldMatrix(osg::Matrixd&, osg::NodeVisitor*) const]+0x36): undefined reference to `typeinfo for osg::NodeVisitor'
osglogo.cpp:(.text._ZNK20MyBillboardTransform25computeLocalToWorldMatrixERN3osg7MatrixdEPNS0_11NodeVisitorE[MyBillboardTransform::computeLocalToWorldMatrix(osg::Matrixd&, osg::NodeVisitor*) const]+0x13b): undefined reference to `osg::Quat::makeRotate(double, osg::Vec3f const&)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x8): undefined reference to `osg::Object::setThreadSafeRefUnref(bool)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x24): undefined reference to `osg::Array::className() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x30): undefined reference to `osg::Object::setUserData(osg::Referenced*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x34): undefined reference to `osg::Object::getUserData()'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x38): undefined reference to `osg::Object::getUserData() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x3c): undefined reference to `osg::BufferData::resizeGLObjectBuffers(unsigned int)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x40): undefined reference to `osg::BufferData::releaseGLObjects(osg::State*) const'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x8): undefined reference to `osg::Group::setThreadSafeRefUnref(bool)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x30): undefined reference to `osg::Object::setUserData(osg::Referenced*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x34): undefined reference to `osg::Object::getUserData()'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x38): undefined reference to `osg::Object::getUserData() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x3c): undefined reference to `osg::Group::resizeGLObjectBuffers(unsigned int)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x40): undefined reference to `osg::Group::releaseGLObjects(osg::State*) const'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x70): undefined reference to `osg::Node::ascend(osg::NodeVisitor&)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x74): undefined reference to `osg::Group::traverse(osg::NodeVisitor&)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x78): undefined reference to `osg::Transform::computeBound() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x7c): undefined reference to `osg::Group::addChild(osg::Node*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x80): undefined reference to `osg::Group::insertChild(unsigned int, osg::Node*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x84): undefined reference to `osg::Group::removeChildren(unsigned int, unsigned int)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x88): undefined reference to `osg::Group::replaceChild(osg::Node*, osg::Node*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x8c): undefined reference to `osg::Group::setChild(unsigned int, osg::Node*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0xac): undefined reference to `osg::PositionAttitudeTransform::computeWorldToLocalMatrix(osg::Matrixd&, osg::NodeVisitor*) const'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x8): undefined reference to `osg::Object::setThreadSafeRefUnref(bool)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x24): undefined reference to `osg::Array::className() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x30): undefined reference to `osg::Object::setUserData(osg::Referenced*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x34): undefined reference to `osg::Object::getUserData()'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x38): undefined reference to `osg::Object::getUserData() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x3c): undefined reference to `osg::BufferData::resizeGLObjectBuffers(unsigned int)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x40): undefined reference to `osg::BufferData::releaseGLObjects(osg::State*) const'
/tmp/ccQ8pJfi.o:(.rodata._ZTIN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[typeinfo for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x10): undefined reference to `typeinfo for osg::Array'
/tmp/ccQ8pJfi.o:(.rodata._ZTI20MyBillboardTransform[typeinfo for MyBillboardTransform]+0x8): undefined reference to `typeinfo for osg::PositionAttitudeTransform'
/tmp/ccQ8pJfi.o:(.rodata._ZTIN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[typeinfo for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x10): undefined reference to `typeinfo for osg::Array'
collect2: ld returned 1 exit status
Any help would be appreciated.
Thank you!
Cheers,
Amar[/code]
------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=44602#44602
I'm interested in using OSG for a project but am having difficulty compiling the example applications. I am running Ubuntu linux and installed the binaries through the package manager and also built the source. I am able to run the osgversion command as the OSG Quick Start Guide instructs but cannot compile an example program.
For example, to compile the sample "osglogo" program, I try running the command:
Code:
g++ -I/usr/local/include/ -L/usr/local/lib/ -losgViewer -losgDB -losgUtil -losg osglogo.cpp
Which is what the Quick Start Guide says to do. I do indeed have the osg header files in the /usr/local/include/osg* directories and library files in /usr/local/lib/libosg*.
I also appended "/usr/local/lib" to my /etc/ld.so.conf file and ran ldconfig, but I am still receiving this lengthy compiler message:
Code:
/tmp/ccQ8pJfi.o: In function `createWing(osg::Vec3f const&, osg::Vec3f const&, osg::Vec3f const&, float, osg::Vec4f const&)':
osglogo.cpp:(.text+0x1d): undefined reference to `osg::Geometry::Geometry()'
osglogo.cpp:(.text+0x2cb): undefined reference to `osg::Geometry::setVertexArray(osg::Array*)'
osglogo.cpp:(.text+0x30e): undefined reference to `osg::Geometry::setNormalArray(osg::Array*)'
osglogo.cpp:(.text+0x321): undefined reference to `osg::Geometry::setNormalBinding(osg::Geometry::AttributeBinding)'
osglogo.cpp:(.text+0x361): undefined reference to `osg::Geometry::setColorArray(osg::Array*)'
osglogo.cpp:(.text+0x374): undefined reference to `osg::Geometry::setColorBinding(osg::Geometry::AttributeBinding)'
osglogo.cpp:(.text+0x3c9): undefined reference to `osg::Geometry::addPrimitiveSet(osg::PrimitiveSet*)'
osglogo.cpp:(.text+0x3d7): undefined reference to `osgUtil::Tessellator::Tessellator()'
osglogo.cpp:(.text+0x3ec): undefined reference to `osgUtil::Tessellator::retessellatePolygons(osg::Geometry&)'
osglogo.cpp:(.text+0x3fd): undefined reference to `osgUtil::Tessellator::~Tessellator()'
osglogo.cpp:(.text+0x47a): undefined reference to `osgUtil::Tessellator::~Tessellator()'
/tmp/ccQ8pJfi.o: In function `createTextBelow(osg::BoundingBoxImpl<osg::Vec3f> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
osglogo.cpp:(.text+0x4a2): undefined reference to `osg::Geode::Geode()'
osglogo.cpp:(.text+0x4eb): undefined reference to `osgText::Text::Text()'
osglogo.cpp:(.text+0x524): undefined reference to `osgText::TextBase::setFontResolution(unsigned int, unsigned int)'
osglogo.cpp:(.text+0x537): undefined reference to `osgText::TextBase::setAlignment(osgText::TextBase::AlignmentType)'
osglogo.cpp:(.text+0x54a): undefined reference to `osgText::TextBase::setAxisAlignment(osgText::TextBase::AxisAlignment)'
osglogo.cpp:(.text+0x5ca): undefined reference to `osgText::TextBase::setPosition(osg::Vec3f const&)'
osglogo.cpp:(.text+0x60b): undefined reference to `osgText::TextBase::setColor(osg::Vec4f const&)'
osglogo.cpp:(.text+0x61d): undefined reference to `osgText::TextBase::setText(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/tmp/ccQ8pJfi.o: In function `createTextLeft(osg::BoundingBoxImpl<osg::Vec3f> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
osglogo.cpp:(.text+0x6be): undefined reference to `osg::Geode::Geode()'
osglogo.cpp:(.text+0x6cc): undefined reference to `osg::Node::getOrCreateStateSet()'
osglogo.cpp:(.text+0x6ea): undefined reference to `osg::StateSet::setMode(unsigned int, unsigned int)'
osglogo.cpp:(.text+0x730): undefined reference to `osgText::Text::Text()'
osglogo.cpp:(.text+0x769): undefined reference to `osgText::TextBase::setFontResolution(unsigned int, unsigned int)'
osglogo.cpp:(.text+0x77c): undefined reference to `osgText::TextBase::setAlignment(osgText::TextBase::AlignmentType)'
osglogo.cpp:(.text+0x78f): undefined reference to `osgText::TextBase::setAxisAlignment(osgText::TextBase::AxisAlignment)'
osglogo.cpp:(.text+0x7c0): undefined reference to `osgText::TextBase::setCharacterSize(float)'
osglogo.cpp:(.text+0x8aa): undefined reference to `osgText::TextBase::setPosition(osg::Vec3f const&)'
osglogo.cpp:(.text+0x8f1): undefined reference to `osgText::TextBase::setColor(osg::Vec4f const&)'
osglogo.cpp:(.text+0x903): undefined reference to `osgText::TextBase::setText(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
osglogo.cpp:(.text+0x916): undefined reference to `osgText::Text::setBackdropType(osgText::Text::BackdropType)'
osglogo.cpp:(.text+0x929): undefined reference to `osgText::Text::setBackdropImplementation(osgText::Text::BackdropImplementation)'
osglogo.cpp:(.text+0x93d): undefined reference to `osgText::Text::setBackdropOffset(float)'
osglogo.cpp:(.text+0x984): undefined reference to `osgText::Text::setBackdropColor(osg::Vec4f const&)'
osglogo.cpp:(.text+0x997): undefined reference to `osgText::Text::setColorGradientMode(osgText::Text::ColorGradientMode)'
osglogo.cpp:(.text+0xa2e): undefined reference to `osgText::Text::setColorGradientCorners(osg::Vec4f const&, osg::Vec4f const&, osg::Vec4f const&, osg::Vec4f const&)'
osglogo.cpp:(.text+0xa73): undefined reference to `osgText::Text::Text()'
osglogo.cpp:(.text+0xaa3): undefined reference to `osgText::TextBase::setText(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
osglogo.cpp:(.text+0xab6): undefined reference to `osgText::TextBase::setAlignment(osgText::TextBase::AlignmentType)'
osglogo.cpp:(.text+0xac9): undefined reference to `osgText::TextBase::setAxisAlignment(osgText::TextBase::AxisAlignment)'
osglogo.cpp:(.text+0xbbb): undefined reference to `osgText::TextBase::setPosition(osg::Vec3f const&)'
osglogo.cpp:(.text+0xbfc): undefined reference to `osgText::TextBase::setColor(osg::Vec4f const&)'
/tmp/ccQ8pJfi.o: In function `createGlobe(osg::BoundingBoxImpl<osg::Vec3f> const&, float, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
osglogo.cpp:(.text+0xcac): undefined reference to `osg::MatrixTransform::MatrixTransform()'
osglogo.cpp:(.text+0xd61): undefined reference to `osg::AnimationPathCallback::AnimationPathCallback(osg::Vec3d const&, osg::Vec3d const&, float)'
osglogo.cpp:(.text+0xd70): undefined reference to `osg::Node::setUpdateCallback(osg::NodeCallback*)'
osglogo.cpp:(.text+0xe4f): undefined reference to `osg::MatrixTransform::MatrixTransform()'
osglogo.cpp:(.text+0xfce): undefined reference to `osg::Geode::Geode()'
osglogo.cpp:(.text+0xfdc): undefined reference to `osg::Node::getOrCreateStateSet()'
osglogo.cpp:(.text+0x1044): undefined reference to `osg::Texture2D::Texture2D()'
osglogo.cpp:(.text+0x1059): undefined reference to `osg::Texture2D::setImage(osg::Image*)'
osglogo.cpp:(.text+0x106d): undefined reference to `osg::Texture::setMaxAnisotropy(float)'
osglogo.cpp:(.text+0x108f): undefined reference to `osg::StateSet::setTextureAttributeAndModes(unsigned int, osg::StateAttribute*, unsigned int)'
osglogo.cpp:(.text+0x10a5): undefined reference to `osg::Material::Material()'
osglogo.cpp:(.text+0x10c2): undefined reference to `osg::StateSet::setAttribute(osg::StateAttribute*, unsigned int)'
osglogo.cpp:(.text+0x1140): undefined reference to `osg::ShapeDrawable::ShapeDrawable(osg::Shape*, osg::TessellationHints*)'
/tmp/ccQ8pJfi.o: In function `createBox(osg::BoundingBoxImpl<osg::Vec3f> const&, float)':
osglogo.cpp:(.text+0x12eb): undefined reference to `osg::Geode::Geode()'
/tmp/ccQ8pJfi.o: In function `createBoxNo5(osg::BoundingBoxImpl<osg::Vec3f> const&, float)':
osglogo.cpp:(.text+0x1b15): undefined reference to `osg::Geode::Geode()'
/tmp/ccQ8pJfi.o: In function `createBoxNo5No2(osg::BoundingBoxImpl<osg::Vec3f> const&, float)':
osglogo.cpp:(.text+0x2144): undefined reference to `osg::Geode::Geode()'
/tmp/ccQ8pJfi.o: In function `createBackdrop(osg::Vec3f const&, osg::Vec3f const&, osg::Vec3f const&)':
osglogo.cpp:(.text+0x23de): undefined reference to `osg::Geometry::Geometry()'
osglogo.cpp:(.text+0x24f9): undefined reference to `osg::Geometry::setVertexArray(osg::Array*)'
osglogo.cpp:(.text+0x2539): undefined reference to `osg::Geometry::setNormalArray(osg::Array*)'
osglogo.cpp:(.text+0x254c): undefined reference to `osg::Geometry::setNormalBinding(osg::Geometry::AttributeBinding)'
osglogo.cpp:(.text+0x25bb): undefined reference to `osg::Geometry::setColorArray(osg::Array*)'
osglogo.cpp:(.text+0x25ce): undefined reference to `osg::Geometry::setColorBinding(osg::Geometry::AttributeBinding)'
osglogo.cpp:(.text+0x2623): undefined reference to `osg::Geometry::addPrimitiveSet(osg::PrimitiveSet*)'
osglogo.cpp:(.text+0x2639): undefined reference to `osg::Geode::Geode()'
/tmp/ccQ8pJfi.o: In function `createLogo(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
osglogo.cpp:(.text+0x2770): undefined reference to `osg::Group::Group()'
osglogo.cpp:(.text+0x27c2): undefined reference to `osg::Quat::makeRotate(double, double, double, double)'
osglogo.cpp:(.text+0x27f3): undefined reference to `osg::Quat::makeRotate(double, double, double, double)'
osglogo.cpp:(.text+0x2a20): undefined reference to `osg::ClearNode::ClearNode()'
osglogo.cpp:(.text+0x2a80): undefined reference to `osg::Group::Group()'
osglogo.cpp:(.text+0x2a8e): undefined reference to `osg::Node::getOrCreateStateSet()'
osglogo.cpp:(.text+0x2aac): undefined reference to `osg::StateSet::setMode(unsigned int, unsigned int)'
/tmp/ccQ8pJfi.o: In function `main':
osglogo.cpp:(.text+0x2b64): undefined reference to `osg::ArgumentParser::ArgumentParser(int*, char**)'
osglogo.cpp:(.text+0x2b69): undefined reference to `osg::DisplaySettings::instance()'
osglogo.cpp:(.text+0x2b8d): undefined reference to `osgViewer::Viewer::Viewer()'
osglogo.cpp:(.text+0x2bf1): undefined reference to `osg::ArgumentParser::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
osglogo.cpp:(.text+0x2c4a): undefined reference to `osg::ArgumentParser::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
osglogo.cpp:(.text+0x2cef): undefined reference to `osg::ApplicationUsage::write(std::basic_ostream<char, std::char_traits<char> >&, unsigned int, unsigned int, bool)'
osglogo.cpp:(.text+0x2dd6): undefined reference to `osg::ArgumentParser::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
osglogo.cpp:(.text+0x2e20): undefined reference to `osgGetVersion'
osglogo.cpp:(.text+0x2ea4): undefined reference to `osg::ArgumentParser::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osg::ArgumentParser::Parameter)'
osglogo.cpp:(.text+0x2f3d): undefined reference to `osg::ArgumentParser::read(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osg::ArgumentParser::Parameter)'
osglogo.cpp:(.text+0x30d8): undefined reference to `osgViewer::Viewer::setSceneData(osg::Node*)'
osglogo.cpp:(.text+0x30e4): undefined reference to `osgViewer::Viewer::run()'
osglogo.cpp:(.text+0x311f): undefined reference to `osgViewer::Viewer::~Viewer()'
osglogo.cpp:(.text+0x32db): undefined reference to `osgViewer::Viewer::~Viewer()'
/tmp/ccQ8pJfi.o: In function `osg::Referenced::ref() const':
osglogo.cpp:(.text._ZNK3osg10Referenced3refEv[osg::Referenced::ref() const]+0x10): undefined reference to `OpenThreads::Atomic::operator++()'
/tmp/ccQ8pJfi.o: In function `osg::Referenced::unref() const':
osglogo.cpp:(.text._ZNK3osg10Referenced5unrefEv[osg::Referenced::unref() const]+0x10): undefined reference to `OpenThreads::Atomic::operator--()'
osglogo.cpp:(.text._ZNK3osg10Referenced5unrefEv[osg::Referenced::unref() const]+0x3e): undefined reference to `osg::Referenced::signalObserversAndDelete(bool, bool) const'
/tmp/ccQ8pJfi.o: In function `osg::Object::Object()':
osglogo.cpp:(.text._ZN3osg6ObjectC2Ev[_ZN3osg6ObjectC5Ev]+0xe): undefined reference to `osg::Referenced::Referenced()'
osglogo.cpp:(.text._ZN3osg6ObjectC2Ev[_ZN3osg6ObjectC5Ev]+0x17): undefined reference to `vtable for osg::Object'
osglogo.cpp:(.text._ZN3osg6ObjectC2Ev[_ZN3osg6ObjectC5Ev]+0x4c): undefined reference to `osg::Referenced::~Referenced()'
/tmp/ccQ8pJfi.o: In function `osg::Object::Object(bool)':
osglogo.cpp:(.text._ZN3osg6ObjectC2Eb[_ZN3osg6ObjectC5Eb]+0x1c): undefined reference to `osg::Referenced::Referenced(bool)'
osglogo.cpp:(.text._ZN3osg6ObjectC2Eb[_ZN3osg6ObjectC5Eb]+0x25): undefined reference to `vtable for osg::Object'
osglogo.cpp:(.text._ZN3osg6ObjectC2Eb[_ZN3osg6ObjectC5Eb]+0x5a): undefined reference to `osg::Referenced::~Referenced()'
/tmp/ccQ8pJfi.o: In function `osg::Matrixd::Matrixd()':
osglogo.cpp:(.text._ZN3osg7MatrixdC2Ev[_ZN3osg7MatrixdC5Ev]+0xd): undefined reference to `osg::Matrixd::makeIdentity()'
/tmp/ccQ8pJfi.o: In function `osg::Matrixd::operator*(osg::Matrixd const&) const':
osglogo.cpp:(.text._ZNK3osg7MatrixdmlERKS0_[osg::Matrixd::operator*(osg::Matrixd const&) const]+0x27): undefined reference to `osg::Matrixd::mult(osg::Matrixd const&, osg::Matrixd const&)'
/tmp/ccQ8pJfi.o: In function `osg::Matrixd::scale(double, double, double)':
osglogo.cpp:(.text._ZN3osg7Matrixd5scaleEddd[osg::Matrixd::scale(double, double, double)]+0x52): undefined reference to `osg::Matrixd::makeScale(double, double, double)'
/tmp/ccQ8pJfi.o: In function `osg::Matrixd::translate(double, double, double)':
osglogo.cpp:(.text._ZN3osg7Matrixd9translateEddd[osg::Matrixd::translate(double, double, double)]+0x52): undefined reference to `osg::Matrixd::makeTranslate(double, double, double)'
/tmp/ccQ8pJfi.o: In function `osg::Matrixd::preMultRotate(osg::Quat const&)':
osglogo.cpp:(.text._ZN3osg7Matrixd13preMultRotateERKNS_4QuatE[osg::Matrixd::preMultRotate(osg::Quat const&)]+0x38): undefined reference to `osg::Matrixd::setRotate(osg::Quat const&)'
osglogo.cpp:(.text._ZN3osg7Matrixd13preMultRotateERKNS_4QuatE[osg::Matrixd::preMultRotate(osg::Quat const&)]+0x4d): undefined reference to `osg::Matrixd::preMult(osg::Matrixd const&)'
/tmp/ccQ8pJfi.o: In function `osg::BufferData::BufferData()':
osglogo.cpp:(.text._ZN3osg10BufferDataC2Ev[_ZN3osg10BufferDataC5Ev]+0x1e): undefined reference to `vtable for osg::BufferData'
/tmp/ccQ8pJfi.o: In function `osg::BufferData::BufferData(osg::BufferData const&, osg::CopyOp const&)':
osglogo.cpp:(.text._ZN3osg10BufferDataC2ERKS0_RKNS_6CopyOpE[_ZN3osg10BufferDataC5ERKS0_RKNS_6CopyOpE]+0x1c): undefined reference to `osg::Object::Object(osg::Object const&, osg::CopyOp const&)'
osglogo.cpp:(.text._ZN3osg10BufferDataC2ERKS0_RKNS_6CopyOpE[_ZN3osg10BufferDataC5ERKS0_RKNS_6CopyOpE]+0x25): undefined reference to `vtable for osg::BufferData'
osglogo.cpp:(.text._ZN3osg10BufferDataC2ERKS0_RKNS_6CopyOpE[_ZN3osg10BufferDataC5ERKS0_RKNS_6CopyOpE]+0x7c): undefined reference to `osg::Object::~Object()'
/tmp/ccQ8pJfi.o: In function `osg::Array::Array(osg::Array::Type, int, unsigned int)':
osglogo.cpp:(.text._ZN3osg5ArrayC2ENS0_4TypeEij[_ZN3osg5ArrayC5ENS0_4TypeEij]+0x16): undefined reference to `vtable for osg::Array'
/tmp/ccQ8pJfi.o: In function `osg::Array::Array(osg::Array const&, osg::CopyOp const&)':
osglogo.cpp:(.text._ZN3osg5ArrayC2ERKS0_RKNS_6CopyOpE[_ZN3osg5ArrayC5ERKS0_RKNS_6CopyOpE]+0x24): undefined reference to `vtable for osg::Array'
/tmp/ccQ8pJfi.o: In function `osg::Array::isSameKindAs(osg::Object const*) const':
osglogo.cpp:(.text._ZNK3osg5Array12isSameKindAsEPKNS_6ObjectE[osg::Array::isSameKindAs(osg::Object const*) const]+0x19): undefined reference to `typeinfo for osg::Array'
osglogo.cpp:(.text._ZNK3osg5Array12isSameKindAsEPKNS_6ObjectE[osg::Array::isSameKindAs(osg::Object const*) const]+0x21): undefined reference to `typeinfo for osg::Object'
/tmp/ccQ8pJfi.o: In function `osg::Array::~Array()':
osglogo.cpp:(.text._ZN3osg5ArrayD2Ev[_ZN3osg5ArrayD5Ev]+0xb): undefined reference to `vtable for osg::Array'
osglogo.cpp:(.text._ZN3osg5ArrayD2Ev[_ZN3osg5ArrayD5Ev]+0x16): undefined reference to `osg::BufferData::~BufferData()'
/tmp/ccQ8pJfi.o: In function `osg::Shape::Shape()':
osglogo.cpp:(.text._ZN3osg5ShapeC2Ev[_ZN3osg5ShapeC5Ev]+0x16): undefined reference to `vtable for osg::Shape'
/tmp/ccQ8pJfi.o: In function `osg::Sphere::Sphere(osg::Vec3f const&, float)':
osglogo.cpp:(.text._ZN3osg6SphereC2ERKNS_5Vec3fEf[_ZN3osg6SphereC5ERKNS_5Vec3fEf]+0x16): undefined reference to `vtable for osg::Sphere'
/tmp/ccQ8pJfi.o: In function `osg::PrimitiveSet::PrimitiveSet(osg::PrimitiveSet::Type, unsigned int, int)':
osglogo.cpp:(.text._ZN3osg12PrimitiveSetC2ENS0_4TypeEji[_ZN3osg12PrimitiveSetC5ENS0_4TypeEji]+0x16): undefined reference to `vtable for osg::PrimitiveSet'
/tmp/ccQ8pJfi.o: In function `osg::DrawArrays::DrawArrays(unsigned int, int, int, int)':
osglogo.cpp:(.text._ZN3osg10DrawArraysC2Ejiii[_ZN3osg10DrawArraysC5Ejiii]+0x2c): undefined reference to `vtable for osg::DrawArrays'
/tmp/ccQ8pJfi.o: In function `osg::MatrixTransform::setMatrix(osg::Matrixd const&)':
osglogo.cpp:(.text._ZN3osg15MatrixTransform9setMatrixERKNS_7MatrixdE[osg::MatrixTransform::setMatrix(osg::Matrixd const&)]+0x2f): undefined reference to `osg::Node::dirtyBound()'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::PositionAttitudeTransform(osg::PositionAttitudeTransform const&, osg::CopyOp const&)':
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransformC2ERKS0_RKNS_6CopyOpE[_ZN3osg25PositionAttitudeTransformC5ERKS0_RKNS_6CopyOpE]+0x1b): undefined reference to `osg::Transform::Transform(osg::Transform const&, osg::CopyOp const&)'
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransformC2ERKS0_RKNS_6CopyOpE[_ZN3osg25PositionAttitudeTransformC5ERKS0_RKNS_6CopyOpE]+0x24): undefined reference to `vtable for osg::PositionAttitudeTransform'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::cloneType() const':
osglogo.cpp:(.text._ZNK3osg25PositionAttitudeTransform9cloneTypeEv[osg::PositionAttitudeTransform::cloneType() const]+0x1a): undefined reference to `osg::PositionAttitudeTransform::PositionAttitudeTransform()'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::isSameKindAs(osg::Object const*) const':
osglogo.cpp:(.text._ZNK3osg25PositionAttitudeTransform12isSameKindAsEPKNS_6ObjectE[osg::PositionAttitudeTransform::isSameKindAs(osg::Object const*) const]+0x19): undefined reference to `typeinfo for osg::PositionAttitudeTransform'
osglogo.cpp:(.text._ZNK3osg25PositionAttitudeTransform12isSameKindAsEPKNS_6ObjectE[osg::PositionAttitudeTransform::isSameKindAs(osg::Object const*) const]+0x21): undefined reference to `typeinfo for osg::Object'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::setPosition(osg::Vec3d const&)':
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransform11setPositionERKNS_5Vec3dE[osg::PositionAttitudeTransform::setPosition(osg::Vec3d const&)]+0x48): undefined reference to `osg::Node::dirtyBound()'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::setAttitude(osg::Quat const&)':
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransform11setAttitudeERKNS_4QuatE[osg::PositionAttitudeTransform::setAttitude(osg::Quat const&)]+0x25): undefined reference to `osg::Node::dirtyBound()'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::setPivotPoint(osg::Vec3d const&)':
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransform13setPivotPointERKNS_5Vec3dE[osg::PositionAttitudeTransform::setPivotPoint(osg::Vec3d const&)]+0x48): undefined reference to `osg::Node::dirtyBound()'
/tmp/ccQ8pJfi.o: In function `osg::PositionAttitudeTransform::~PositionAttitudeTransform()':
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransformD2Ev[_ZN3osg25PositionAttitudeTransformD5Ev]+0xb): undefined reference to `vtable for osg::PositionAttitudeTransform'
osglogo.cpp:(.text._ZN3osg25PositionAttitudeTransformD2Ev[_ZN3osg25PositionAttitudeTransformD5Ev]+0x16): undefined reference to `osg::Transform::~Transform()'
/tmp/ccQ8pJfi.o: In function `osgDB::readImageFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&):
osglogo.cpp:(.text._ZN5osgDB13readImageFileERKSs[osgDB::readImageFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0xe): undefined reference to `osgDB::Registry::instance(bool)'
osglogo.cpp:(.text._ZN5osgDB13readImageFileERKSs[osgDB::readImageFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0x25): undefined reference to `osgDB::readImageFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osgDB::Options const*)'
/tmp/ccQ8pJfi.o: In function `osgDB::readNodeFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
osglogo.cpp:(.text._ZN5osgDB12readNodeFileERKSs[osgDB::readNodeFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0xe): undefined reference to `osgDB::Registry::instance(bool)'
osglogo.cpp:(.text._ZN5osgDB12readNodeFileERKSs[osgDB::readNodeFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)]+0x25): undefined reference to `osgDB::readNodeFile(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, osgDB::Options const*)'
/tmp/ccQ8pJfi.o: In function `MyBillboardTransform::MyBillboardTransform()':
osglogo.cpp:(.text._ZN20MyBillboardTransformC2Ev[_ZN20MyBillboardTransformC5Ev]+0xd): undefined reference to `osg::PositionAttitudeTransform::PositionAttitudeTransform()'
/tmp/ccQ8pJfi.o: In function `MyBillboardTransform::computeLocalToWorldMatrix(osg::Matrixd&, osg::NodeVisitor*) const':
osglogo.cpp:(.text._ZNK20MyBillboardTransform25computeLocalToWorldMatrixERN3osg7MatrixdEPNS0_11NodeVisitorE[MyBillboardTransform::computeLocalToWorldMatrix(osg::Matrixd&, osg::NodeVisitor*) const]+0x2e): undefined reference to `typeinfo for osgUtil::CullVisitor'
osglogo.cpp:(.text._ZNK20MyBillboardTransform25computeLocalToWorldMatrixERN3osg7MatrixdEPNS0_11NodeVisitorE[MyBillboardTransform::computeLocalToWorldMatrix(osg::Matrixd&, osg::NodeVisitor*) const]+0x36): undefined reference to `typeinfo for osg::NodeVisitor'
osglogo.cpp:(.text._ZNK20MyBillboardTransform25computeLocalToWorldMatrixERN3osg7MatrixdEPNS0_11NodeVisitorE[MyBillboardTransform::computeLocalToWorldMatrix(osg::Matrixd&, osg::NodeVisitor*) const]+0x13b): undefined reference to `osg::Quat::makeRotate(double, osg::Vec3f const&)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x8): undefined reference to `osg::Object::setThreadSafeRefUnref(bool)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x24): undefined reference to `osg::Array::className() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x30): undefined reference to `osg::Object::setUserData(osg::Referenced*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x34): undefined reference to `osg::Object::getUserData()'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x38): undefined reference to `osg::Object::getUserData() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x3c): undefined reference to `osg::BufferData::resizeGLObjectBuffers(unsigned int)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[vtable for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x40): undefined reference to `osg::BufferData::releaseGLObjects(osg::State*) const'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x8): undefined reference to `osg::Group::setThreadSafeRefUnref(bool)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x30): undefined reference to `osg::Object::setUserData(osg::Referenced*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x34): undefined reference to `osg::Object::getUserData()'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x38): undefined reference to `osg::Object::getUserData() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x3c): undefined reference to `osg::Group::resizeGLObjectBuffers(unsigned int)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x40): undefined reference to `osg::Group::releaseGLObjects(osg::State*) const'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x70): undefined reference to `osg::Node::ascend(osg::NodeVisitor&)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x74): undefined reference to `osg::Group::traverse(osg::NodeVisitor&)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x78): undefined reference to `osg::Transform::computeBound() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x7c): undefined reference to `osg::Group::addChild(osg::Node*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x80): undefined reference to `osg::Group::insertChild(unsigned int, osg::Node*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x84): undefined reference to `osg::Group::removeChildren(unsigned int, unsigned int)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x88): undefined reference to `osg::Group::replaceChild(osg::Node*, osg::Node*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0x8c): undefined reference to `osg::Group::setChild(unsigned int, osg::Node*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTV20MyBillboardTransform[vtable for MyBillboardTransform]+0xac): undefined reference to `osg::PositionAttitudeTransform::computeWorldToLocalMatrix(osg::Matrixd&, osg::NodeVisitor*) const'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x8): undefined reference to `osg::Object::setThreadSafeRefUnref(bool)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x24): undefined reference to `osg::Array::className() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x30): undefined reference to `osg::Object::setUserData(osg::Referenced*)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x34): undefined reference to `osg::Object::getUserData()'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x38): undefined reference to `osg::Object::getUserData() const'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x3c): undefined reference to `osg::BufferData::resizeGLObjectBuffers(unsigned int)'
/tmp/ccQ8pJfi.o:(.rodata._ZTVN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[vtable for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x40): undefined reference to `osg::BufferData::releaseGLObjects(osg::State*) const'
/tmp/ccQ8pJfi.o:(.rodata._ZTIN3osg13TemplateArrayINS_5Vec4fELNS_5Array4TypeE11ELi4ELi5126EEE[typeinfo for osg::TemplateArray<osg::Vec4f, (osg::Array::Type)11, 4, 5126>]+0x10): undefined reference to `typeinfo for osg::Array'
/tmp/ccQ8pJfi.o:(.rodata._ZTI20MyBillboardTransform[typeinfo for MyBillboardTransform]+0x8): undefined reference to `typeinfo for osg::PositionAttitudeTransform'
/tmp/ccQ8pJfi.o:(.rodata._ZTIN3osg13TemplateArrayINS_5Vec3fELNS_5Array4TypeE10ELi3ELi5126EEE[typeinfo for osg::TemplateArray<osg::Vec3f, (osg::Array::Type)10, 3, 5126>]+0x10): undefined reference to `typeinfo for osg::Array'
collect2: ld returned 1 exit status
Any help would be appreciated.
Thank you!
Cheers,
Amar[/code]
------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=44602#44602