From: Steffen, Keith (keith.steffen++at++lmco.com)
Date: 07/31/2002 08:09:12
I need some help with a problem concerning dynamic_cast and Performer:
I can not seem to get a program which has any dynamic_cast in it to work if
it is linked with Performer.
Here is an example:
-------- caster.C
#include <iostream>
class cBase
{
public:
cBase() { cout << "In cBase::cBase" << endl; }
virtual void Func() { cout << "In cBase::Func" << endl; }
};
class cDerived : public cBase
{
public:
cDerived() { cout << "In cDerived::cDerived" << endl; }
virtual void Func() { cout << "In cDerived::Func" << endl; }
};
void main()
{
cBase *Base = new cDerived;
cDerived *Derived = dynamic_cast<cDerived *>(Base);
Derived->Func();
}
--------
g++ caster.C -o caster
./caster
In cBase::cBase
In cDerived::cDerived
In cDerived::Func
So far so good, Now try this:
g++ caster.C -o caster_broke -lpf
./caster_broke
In cBase::cBase
In cDerived::cDerived
Segmentation Fault
Just linking the Performer library breaks the program.
I'm currently running RedHat Linux 7.3 with the version 2960 of the NVIDIA
kernel and GLX rpms.
g++ -v returns
Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs
gcc version 2.96 20000731 (Red Hat Linux 7.3 2.96-110)
rpm --query --info --file /usr/lib/libpf.so.2 returns
Name : performer_eoe Relocations: (not relocateable)
Version : 2.5.1 Vendor: SGI
Release : 0 Build Date: Fri 03 May 2002
05:53:53 PM CDT
Install date: Mon 29 Jul 2002 03:55:58 PM CDT Build Host:
dice.engr.sgi.com
Group : Libraries Source RPM:
performer_eoe-2.5.1-0.src.rpm
Size : 16081415 License: Silicon Graphics,
Inc.
Packager : Silicon Graphics <mongoose-feedback++at++corp.sgi.com>
URL : http://www.sgi.com/software/performer
Summary : Performer Execution Only Environment
Description :
OpenGL Performer is a high-performance 3D rendering toolkit for developers
of real-time, multiprocessed, interactive graphics applications. OpenGL
Performer dramatically simplifies development of complex applications such
as visual simulation, simulation-based design, virtual reality, interactive
entertainment, broadcast video, CAD, and architectural walk-through.
I've tried the Performer RPMS at the download site for gcc 2.96 and still
have had no luck.
Is anyone running a Linux configuration that dynamic_cast and Performer
(together) work on?
Keith Steffen
Senior Staff Engineer
TOPSCENE Program
Lockheed Martin Missiles and Fire Control - Dallas
P.O Box 650003 M/S: SP-72 Dallas, Texas 75265-0003
Telephone: 972-603-9027 Facsimile: 972-603-9013
Beeper: 972-328-7841
E-mail: keith.steffen++at++lmco.com
This archive was generated by hypermail 2b29 : Wed Jul 31 2002 - 08:15:52 PDT