I have a basic install problem. When I attempt to compile a simple program (which compiles & executes on another suse box), I have the following problem. "qmake" produces the appropriate Makefile, but "make" produces the following g++ -o hello hello.o -L/usr/lib/ -L/usr/lib/qt3/lib/ -L/usr/X11R6/lib/ -lqt -lXext -lX11 -lm /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x508b): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XListInputDevices' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x53db): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XFreeDeviceList' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x570c): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XOpenDevice' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x58e4): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XOpenDevice' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x5c7c): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `glXGetConfig' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x5d30): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `glXGetConfig' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x6360): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XRRQueryExtension' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x638f): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XRenderQueryExtension' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x65f6): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XRRSelectInput' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x6b13): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XRenderFindVisualFormat' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x834e): In function `qt_cleanup()': : undefined reference to `XCloseDevice' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x8365): In function `qt_cleanup()': : undefined reference to `XCloseDevice' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0xaa7d): In function `.L3044': : undefined reference to `XRRUpdateConfiguration' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0xaa92): In function `.L3044': : undefined reference to `XRRRootToScreen' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0xfeed): In function `sm_setProperty(char const*, char const*, int, SmPropValue*)': : undefined reference to `SmcSetProperties' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0xff13): In function `sm_setProperty(char const*, char const*, int, SmPropValue*)': : undefined reference to `SmcDeleteProperties' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x106ee): In function `sm_performSaveYourself(QSessionManagerData*)': <about 400 lines deleted> Would someone please tell me what I have overlooked? Thanks! gary system details: Installation: SuSE 8.2 Intel P4 .bashrc includes -------- export QTDIR=/usr/lib/qt3 export PATH=$PATH:$QTDIR/bin export MANPATH=$QTDIR/man:$MANPATH export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH --------
Gary Huckabay wrote:
I have a basic install problem. When I attempt to compile a simple program (which compiles & executes on another suse box), I have the following problem.
"qmake" produces the appropriate Makefile, but "make" produces the following
g++ -o hello hello.o -L/usr/lib/ -L/usr/lib/qt3/lib/ -L/usr/X11R6/lib/ -lqt -lXext -lX11 -lm /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x508b): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XListInputDevices' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x53db): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XFreeDeviceList' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x570c): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XOpenDevice' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x58e4): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XOpenDevice' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x5c7c): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `glXGetConfig' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x5d30): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `glXGetConfig' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x6360): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XRRQueryExtension' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x638f): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XRenderQueryExtension' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x65f6): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XRRSelectInput' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x6b13): In function `qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long)': : undefined reference to `XRenderFindVisualFormat' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x834e): In function `qt_cleanup()': : undefined reference to `XCloseDevice' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x8365): In function `qt_cleanup()': : undefined reference to `XCloseDevice' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0xaa7d): In function `.L3044': : undefined reference to `XRRUpdateConfiguration' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0xaa92): In function `.L3044': : undefined reference to `XRRRootToScreen' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0xfeed): In function `sm_setProperty(char const*, char const*, int, SmPropValue*)': : undefined reference to `SmcSetProperties' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0xff13): In function `sm_setProperty(char const*, char const*, int, SmPropValue*)': : undefined reference to `SmcDeleteProperties' /usr/lib/qt3/lib//libqt.a(qapplication_x11.o)(.text+0x106ee): In function `sm_performSaveYourself(QSessionManagerData*)':
<about 400 lines deleted>
Would someone please tell me what I have overlooked?
Thanks!
gary
system details: Installation: SuSE 8.2 Intel P4
.bashrc includes -------- export QTDIR=/usr/lib/qt3 export PATH=$PATH:$QTDIR/bin export MANPATH=$QTDIR/man:$MANPATH export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH --------
The various glX... routines are part of SGI Open Graphics Library (Open GL), you need to include the libraries which resolve those routines (-lGL -lGLU -lGLw should get everything, YMMV). It also looks as if you may need to reference -lqt twice, since some of those symbols look like other parts of qt (just a guess there, but it is often necessary to reference libraries more than once when using the GNU linker).
On Sun, 28 Mar 2004, William A. Mahaffey III wrote:
The various glX... routines are part of SGI Open Graphics Library (Open GL), you need to include the libraries which resolve those routines (-lGL -lGLU -lGLw should get everything, YMMV). It also looks as if you may need to reference -lqt twice, since some of those symbols look like other parts of qt (just a guess there, but it is often necessary to reference libraries more than once when using the GNU linker).
But how could opengl be involved? I just used the hello.cpp program to make sure the installation was ok. Program below. #include <qapplication.h> #include <qpushbutton.h> int main( int argc, char **argv ) { QApplication a( argc, argv ); QPushButton hello( "Hello world!", 0 ); hello.resize( 100, 30 ); a.setMainWidget( &hello ); hello.show(); return a.exec(); } Thank you for responding. Other suggestions? gary
Gary Huckabay wrote:
On Sun, 28 Mar 2004, William A. Mahaffey III wrote:
The various glX... routines are part of SGI Open Graphics Library (Open GL), you need to include the libraries which resolve those routines (-lGL -lGLU -lGLw should get everything, YMMV). It also looks as if you may need to reference -lqt twice, since some of those symbols look like other parts of qt (just a guess there, but it is often necessary to reference libraries more than once when using the GNU linker).
But how could opengl be involved? I just used the hello.cpp program to make sure the installation was ok.
Program below.
#include <qapplication.h> #include <qpushbutton.h> int main( int argc, char **argv ) { QApplication a( argc, argv );
QPushButton hello( "Hello world!", 0 ); hello.resize( 100, 30 );
a.setMainWidget( &hello ); hello.show(); return a.exec(); }
Thank you for responding. Other suggestions?
gary
The various glX... routines that your last post said were unresolved are OpenGL routines. I have no idea why they are being invoked, I am not a qt programmer, I was just responding based on general knowlege & the details of your post :-). qt may invoke OpenGL to do all of its screen rendering, or those routines being called may just be toolkit initializations, I can't say ....
participants (2)
-
Gary Huckabay
-
William A. Mahaffey III