Arthur Wiebe wrote:

I actually had two different PLIB installations floating around. But
only one in the prefix. But even after removing the other two I still
get this error.



Compilers will typically search a default path that usually/often includes /usr/include, /usr/lib, /usr/local/include, /usr/local/lib, and some usr/include tree specific to the compiler version. If you specify a prefix that simply appends additional search directories to the standard path.


The next thing I would do, if you are sure you only have one copy of libplibfnt.a and are sure that was built with the same compiler version you are using to build flightgear is:

run "nm libplibfnt.a | less" and search for instances of the string "load".

Do the same thing for layout-test.o

See if the munged names actually match. If they don't there could be some type promotion assumption in the header file that your compiler isn't doing ... you may have to do some sort of explicite cast to force your compiler to use the exact same parameter and return types so that the name munging comes out identical. You shouldn't have to do this though since others seem to be able to build successfully.

My money is still on some sort of stray copy of libplibfnt floating around or a mismatch in compiler versions, or you still have pieces of plib or flightgear that never actually got rebuilt when switched compiler versions.

Regards,

Curt.


On Fri, 12 Nov 2004 10:19:13 -0600, Curtis L. Olson
<[EMAIL PROTECTED]> wrote:


Arthur,

The missing symbol should be in the -lplibfnt library.  Do you perhaps
have an older version of plib (or parts of it) built with a different
compiler still floating around on your system?

By default plib tries to install itself in /usr/lib and /usr/include, so
I would check there first.  If you don't find anything there, then I'd
probably do a "find" from the top level ... something like:

   find / -print | grep plibfnt

(Note that different version of find can have slightly different
behavior nuances, so if the above command doesn't quite do anything
useful, check your local man page for appropriate options.)

See if that turns up something that is trying to hide from you.  If the
compiler is finding an outdated libplibfnt.a in it's search path before
the correct one, then you could see this sort of error.  If that doesn't
turn anything up, then we'll have to search for some other cause.

Regards,

Curt.




Arthur Wiebe wrote:



I just started over again. Building PLIB, SimGear, and FlightGear all from CVS.

PLIB and SimGear worked of course but flightgear halts when building the GUI:

Making all in GUI
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT new_gui.o -MD
-MP -MF ".deps/new_gui.Tpo" -c -o new_gui.o new_gui.cxx; \
then mv -f ".deps/new_gui.Tpo" ".deps/new_gui.Po"; else rm -f
".deps/new_gui.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT dialog.o -MD
-MP -MF ".deps/dialog.Tpo" -c -o dialog.o dialog.cxx; \
then mv -f ".deps/dialog.Tpo" ".deps/dialog.Po"; else rm -f
".deps/dialog.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT menubar.o -MD
-MP -MF ".deps/menubar.Tpo" -c -o menubar.o menubar.cxx; \
then mv -f ".deps/menubar.Tpo" ".deps/menubar.Po"; else rm -f
".deps/menubar.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT gui.o -MD -MP
-MF ".deps/gui.Tpo" -c -o gui.o gui.cxx; \
then mv -f ".deps/gui.Tpo" ".deps/gui.Po"; else rm -f ".deps/gui.Tpo";
exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT gui_funcs.o
-MD -MP -MF ".deps/gui_funcs.Tpo" -c -o gui_funcs.o gui_funcs.cxx; \
then mv -f ".deps/gui_funcs.Tpo" ".deps/gui_funcs.Po"; else rm -f
".deps/gui_funcs.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT gui_local.o
-MD -MP -MF ".deps/gui_local.Tpo" -c -o gui_local.o gui_local.cxx; \
then mv -f ".deps/gui_local.Tpo" ".deps/gui_local.Po"; else rm -f
".deps/gui_local.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT mouse.o -MD
-MP -MF ".deps/mouse.Tpo" -c -o mouse.o mouse.cxx; \
then mv -f ".deps/mouse.Tpo" ".deps/mouse.Po"; else rm -f
".deps/mouse.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT preset_dlg.o
-MD -MP -MF ".deps/preset_dlg.Tpo" -c -o preset_dlg.o preset_dlg.cxx;
\
then mv -f ".deps/preset_dlg.Tpo" ".deps/preset_dlg.Po"; else rm -f
".deps/preset_dlg.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT prop_picker.o
-MD -MP -MF ".deps/prop_picker.Tpo" -c -o prop_picker.o
prop_picker.cxx; \
then mv -f ".deps/prop_picker.Tpo" ".deps/prop_picker.Po"; else rm -f
".deps/prop_picker.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT sgVec3Slider.o
-MD -MP -MF ".deps/sgVec3Slider.Tpo" -c -o sgVec3Slider.o
sgVec3Slider.cxx; \
then mv -f ".deps/sgVec3Slider.Tpo" ".deps/sgVec3Slider.Po"; else rm
-f ".deps/sgVec3Slider.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT trackball.o
-MD -MP -MF ".deps/trackball.Tpo" -c -o trackball.o trackball.c; \
then mv -f ".deps/trackball.Tpo" ".deps/trackball.Po"; else rm -f
".deps/trackball.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT puList.o -MD
-MP -MF ".deps/puList.Tpo" -c -o puList.o puList.cxx; \
then mv -f ".deps/puList.Tpo" ".deps/puList.Po"; else rm -f
".deps/puList.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT AirportList.o
-MD -MP -MF ".deps/AirportList.Tpo" -c -o AirportList.o
AirportList.cxx; \
then mv -f ".deps/AirportList.Tpo" ".deps/AirportList.Po"; else rm -f
".deps/AirportList.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT layout.o -MD
-MP -MF ".deps/layout.Tpo" -c -o layout.o layout.cxx; \
then mv -f ".deps/layout.Tpo" ".deps/layout.Po"; else rm -f
".deps/layout.Tpo"; exit 1; fi
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT layout-props.o
-MD -MP -MF ".deps/layout-props.Tpo" -c -o layout-props.o
layout-props.cxx; \
then mv -f ".deps/layout-props.Tpo" ".deps/layout-props.Po"; else rm
-f ".deps/layout-props.Tpo"; exit 1; fi
rm -f libGUI.a
ar cru libGUI.a new_gui.o dialog.o menubar.o gui.o gui_funcs.o
gui_local.o mouse.o preset_dlg.o prop_picker.o sgVec3Slider.o
trackball.o puList.o AirportList.o layout.o layout-props.o
ranlib libGUI.a
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -I/usr/X11R6/include -D_REENTRANT -MT layout-test.o
-MD -MP -MF ".deps/layout-test.Tpo" -c -o layout-test.o
layout-test.cxx; \
then mv -f ".deps/layout-test.Tpo" ".deps/layout-test.Po"; else rm -f
".deps/layout-test.Tpo"; exit 1; fi
g++  -I/usr/X11R6/include -D_REENTRANT  -L/fgfs/lib -o layout-test
layout-test.o libGUI.a -lsgprops -lsgdebug -lsgstructure -lsgmisc
-lsgxml -lplibpw -lplibpu -lplibfnt -lplibul -framework GLUT
-framework OpenGL -framework AGL -framework Carbon -lobjc
ld: Undefined symbols:
fntTexFont::load(char const*, unsigned int, unsigned int)
make[2]: *** [layout-test] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1

It almost seems to have something to do with GLUT, OpenGL, gl.h, and X11.

If I try to build flightgear without setting CFLAGS and CXXFLAGS then
I get the following when building in Aircraft:

Making all in Aircraft
if g++ -DHAVE_CONFIG_H -I. -I. -I../../src/Include -I../.. -I../../src
-I/fgfs/include  -g -O2 -D_REENTRANT -MT aircraft.o -MD -MP -MF
".deps/aircraft.Tpo" -c -o aircraft.o aircraft.cxx; \
then mv -f ".deps/aircraft.Tpo" ".deps/aircraft.Po"; else rm -f
".deps/aircraft.Tpo"; exit 1; fi
In file included from ../../src/Main/renderer.hxx:5,
               from ../../src/Main/globals.hxx:45,
               from aircraft.cxx:35:
/fgfs/include/simgear/screen/extensions.hxx:39:19: GL/gl.h: No such
file or directory
In file included from ../../src/Main/renderer.hxx:5,
               from ../../src/Main/globals.hxx:45,
               from aircraft.cxx:35:
/fgfs/include/simgear/screen/extensions.hxx:97: error: `GLenum' was not
 declared in this scope
/fgfs/include/simgear/screen/extensions.hxx:97: error: parse error before `)'
 token
/fgfs/include/simgear/screen/extensions.hxx:98: error: `GLclampf' was not
 declared in this scope
/fgfs/include/simgear/screen/extensions.hxx:98: error: parse error before `,'
 token
/fgfs/include/simgear/screen/extensions.hxx:118: error: `GLenum' was not
 declared in this scope
/fgfs/include/simgear/screen/extensions.hxx:118: error: parse error before `,'
 token
/fgfs/include/simgear/screen/extensions.hxx:119: error: `GLenum' was not
 declared in this scope
/fgfs/include/simgear/screen/extensions.hxx:119: error: parse error before `,'
 token
/fgfs/include/simgear/screen/extensions.hxx:164: error: `GLenum' was not
 declared in this scope
/fgfs/include/simgear/screen/extensions.hxx:164: error: parse error before `)'
 token
/fgfs/include/simgear/screen/extensions.hxx:165: error: `GLenum' was not
 declared in this scope
/fgfs/include/simgear/screen/extensions.hxx:165: error: parse error before `)'
 token
In file included from ../../src/Cockpit/hud.hxx:55,
               from aircraft.cxx:39:
../../src/Include/fg_typedefs.h:88: warning: use of `long double' type; its
 size may change in a future release
../../src/Include/fg_typedefs.h:88: warning: (Long double usage is reported
 only once for each file.
../../src/Include/fg_typedefs.h:88: warning: To disable this warning, use
 -Wno-long-double.)
make[2]: *** [aircraft.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1

And it's the same thing if I enable SDL.
Is there some way to make it use the OpenGL/GLUT framework?

You can probably tell that I hardly know what I'm doing, everything's a guess :)
Maybe if I do a fresh install of OSX it might work then. Well
FlightGear is not worth that.
This is the last day I'm going to work on this. If I can't get it to
work today I will wait until Mac OS X 10.4 is released. (Tiger)





--


Curtis Olson http://www.flightgear.org/~curt HumanFIRST Program http://www.humanfirst.umn.edu/ FlightGear Project http://www.flightgear.org Unique text: 2f585eeea02e2c79d7b1d8c4963bae2d

_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d









--
Curtis Olson        http://www.flightgear.org/~curt
HumanFIRST Program  http://www.humanfirst.umn.edu/
FlightGear Project  http://www.flightgear.org
Unique text:        2f585eeea02e2c79d7b1d8c4963bae2d


_______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel 2f585eeea02e2c79d7b1d8c4963bae2d

Reply via email to