On Wed, 2007-03-14 at 16:36 +1300, Craig Benbow wrote:
> Trying to build a CVS version of FG.  Can anyone point me to whats wrong
> here?  Its a bit beyond my C++ skills sorry.
> Actually I guess this is a linkage problem...still haven't a clue what
> to look for...
> 
> Craig
> 
> 
> rm -f libMain.a
> ar cru libMain.a main.o renderer.o fg_commands.o fg_init.o fg_io.o
> fg_props.o globals.o logger.o options.o splash.
> o util.o viewer.o viewmgr.o fg_os.o
> ranlib libMain.a
> if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
> -I../../src/FDM/JSBSim  -I/usr/X11R6/includ
> e -I/usr/local/include
> -DPKGLIBDIR=\"/usr/local/FlightGear/share/FlightGear\" -g -O2
> -D_REENTRANT -MT bootstrap.o
> -MD -MP -MF ".deps/bootstrap.Tpo" -c -o bootstrap.o bootstrap.cxx; \
> then mv -f ".deps/bootstrap.Tpo" ".deps/bootstrap.Po"; else rm -f
> ".deps/bootstrap.Tpo"; exit 1; fi

#beginning of failed command

> g++ -DPKGLIBDIR=\"/usr/local/FlightGear/share/FlightGear\" -g -O2
> -D_REENTRANT  -L/usr/X11R6/lib -L/usr/local/lib
> -o fgfs  bootstrap.o ../../src/Main/libMain.a
> ../../src/Aircraft/libAircraft.a ../../src/ATC/libATC.a ../../src/Co
> ckpit/libCockpit.a ../../src/Cockpit/built_in/libBuilt_in.a
> ../../src/FDM/libFlight.a ../../src/FDM/Balloon/libBal
> loon.a ../../src/FDM/ExternalNet/libExternalNet.a
> ../../src/FDM/ExternalPipe/libExternalPipe.a ../../src/FDM/JSBSi
> m/libJSBSim.a ../../src/FDM/JSBSim/initialization/libInit.a
> ../../src/FDM/JSBSim/models/libModels.a ../../src/FDM/
> JSBSim/models/flight_control/libFlightControl.a
> ../../src/FDM/JSBSim/models/atmosphere/libAtmosphere.a ../../src/F
> DM/JSBSim/models/propulsion/libPropulsion.a
> ../../src/FDM/JSBSim/input_output/libInputOutput.a ../../src/FDM/JSBSi
> m/math/libMath.a ../../src/FDM/YASim/libYASim.a
> ../../src/FDM/LaRCsim/libLaRCsim.a ../../src/FDM/UIUCModel/libUIUC
> Model.a ../../src/FDM/SP/libSPFDM.a ../../src/GUI/libGUI.a
> ../../src/Autopilot/libAutopilot.a ../../src/Input/libI
> nput.a ../../src/Instrumentation/KLN89/libKLN89.a
> ../../src/Instrumentation/libInstrumentation.a ../../src/Instrum
> entation/HUD/libHUD.a ../../src/Model/libModel.a
> ../../src/Network/libNetwork.a ../../src/Navaids/libNavaids.a ../
> ../src/Scenery/libScenery.a ../../src/Scripting/libScripting.a
> ../../src/Sound/libSound.a ../../src/Airports/libAi
> rports.a ../../src/MultiPlayer/libMultiPlayer.a
> ../../src/AIModel/libAIModel.a ../../src/Systems/libSystems.a ../.
> ./src/Time/libTime.a ../../src/Traffic/libTraffic.a
> ../../src/Environment/libEnvironment.a -lsgroute -lsgsky -lsgs
> ound -lsgephem -lsgmaterial -lsgtgdb -lsgmodel -lsgutil -lsgtiming
> -lsgio -lsgscreen -lsgmath -lsgbucket -lsgprops
>  -lsgdebug -lsgmagvar -lsgmisc -lsgnasal -lsgxml -lsgsound -lsgserial
> -lsgstructure -lsgenvironment -lplibpuaux -l
> plibpu -lplibfnt -lplibjs -lplibnet -lplibsg -lplibul -losgUtil -losgDB
> -losgSim -losg -lOpenThreads -lsgthreads -
> lpthread   -lz -lglut -lGLU -lGL -lXmu -lXt -lSM -lICE -lXi -lXext -lX11
> -ldl -lm  -lopenal -ldl -lm   -lpthread

# End of failed command

The piece I've outlined above is a single command line, it is the final
one to build the fgfs executable.  The error codes below tell me you're
missing one library from the linkage.  

Let me trim the list a bit:

> (...) undefined reference to `virtual thunk to 
> osg::NodeVisitor::~NodeVisitor()'
(...)
> collect2: ld returned 1 exit status
> make[2]: *** [fgfs] Error 1
> make[2]: Leaving directory `/usr/local/src/fg-cvs/source/src/Main'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/usr/local/src/fg-cvs/source/src'
> make: *** [all-recursive] Error 1

The only thing you seem to be missing is the osg::NodeVisitor
The command 

$ grep "NodeVisitor" /usr/lib/lib*so | sed "s|Binary file 
/usr/lib/lib|-l|;s|.so matches||"

gives a list of all libraries that mention a function "NodeVisitor" on
my system there are 15 libraries.  You're including six of these
libraries already:
 -losg -losgSim -losgDB -losgUtil -lsgmodel -lsgtgdb -lsgutil

The other nine are:
 -losgFX -losgGA -losgManipulator -losgParticle -losgProducer -losgShadow 
-losgTerrain -losgText -losgViewer

You could try rerunning the failed command with these nine libraries tacked on 
to see if that fixes your issue.

Ron



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Flightgear-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to