| delorie.com/archives/browse.cgi | search |
Not directly related to QT, but maybe someone can help me.
I'm trying to link an application I need with a library libqtai that uses
libqt and libGL (found in xfree/contrib/sgi-opengl.tar.bz2). When I try to
link my application with the libraries, ex:
$ g++ -I. -I /home/ljupco/CTK/include/ctk -Wall -O2 -D_HAS_QT
-D_HAS_CURSES -o /home/ljupco/CTK/local/bin/CTKScript
/home/ljupco/CTK/lib/CTKScript.o my_blocks.o my_translation_table.o
-L/home/ljupco/CTK/lib -L/usr/local/qt/lib -L/usr/X11R6/lib -lctk
/usr/local/qtai/lib/libqtai.a -lqt -lm -lcurses -lXmu -lXext -lSM -lICE
-lGLU -lglut -lX11 -lGL
I get error like:
/usr/local/qtai/lib/libqtai.a(aiplot3d.o)(.text+0x5a26): undefined reference
to `glPushMatrix AT 0'
I see that libqtai needs:
$ nm /usr/local/qtai/lib/libqtai.a|grep glPushMatrix
U _glPushMatrix AT 0
(also
$ nm /usr/local/qtai/aiplot3d.o |grep glPushMatrix
U _glPushMatrix AT 0
)
While libGL provides:
$ nm /usr/X11R6/lib/libGL.a |grep glPushMatrix
00000000 I ___imp_glPushMatrix
00000000 I __imp__glPushMatrix
00000000 T _glPushMatrix
(also
$ nm /usr/X11R6/static-lib/libGL.a |grep glPushMatrix
00004ab8 T _glPushMatrix
)
Is this the names mangling thingy that c++ ("@parameters-derived-signature")
does versus the way c does it ("_" before the name)? But I see that the
<GL/glut.h> header included from aiplot3d.cpp (and the headers it includes)
have the "#ifdef __cpluplus extern "C" {" stuff. So where does @0 (in "U
_glPushMatrix AT 0") come from?
The metacompiler (moc) is used while creating the libqtai creating
moc_aiplot3d.cpp. Can this be the problem?
thanks in advance,
--
Ljubomir Josifovski
mailto:L DOT Josifovski AT dcs DOT shef DOT ac DOT uk,blj01z AT motorola DOT com
http://www.dcs.shef.ac.uk/~ljupco
--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |