PDA

View Full Version : qtstring.h -> error when compile SEQ



kl608
12-26-2001, 06:08 AM
This is only the last part of error message. but all error message were similiar and was about undefined reference to QTString, I tried to find qtstring.h in /usr/local/qt/include, but the file does not exist. (QT install is in /usr/local/qt) I run mandrake 8.1 with Redhat gcc3 rpm. downloaded and compile QT 2.3.2 from trolltech.com. compilation of QT seems to be fine, but when I tried to compile SEQ4 I get the msg below.. please help.

/usr/local/qt/include/qstring.h:650: undefined reference to `QString::shared_null'
/usr/local/qt/include/qstring.h:652: undefined reference to `QStringData::deleteSelf()'
/usr/local/qt/include/qstring.h:650: undefined reference to `QString::shared_null'
/usr/local/qt/include/qstring.h:652: undefined reference to `QStringData::deleteSelf()'
/usr/local/qt/include/qstring.h:651: undefined reference to `QString::shared_null'
/usr/local/qt/include/qstring.h:651: undefined reference to `QString::shared_null'
collect2: ld returned 1 exit status
make[2]: *** [showeq] Error 1
make[2]: Leaving directory `/root/seq4/showeq/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/seq4/showeq'
make: *** [all-recursive-am] Error 2

casey
12-26-2001, 06:42 AM
the compile is attempting to link to the libqt that alraedy existed on your system, you need to tell it to link to the version you comiled against gcc 3, to do that, set the QTDIR variable as qt tells you to, and play with the --with-Qt-* options to the configure script.

kl608
12-26-2001, 08:53 AM
Thanks for reply.

I tried ur suggestion. I set QTDIR to /usr/local/qt (where the version of QT that complie againsted gcc3 is located) also ran ./configre --with-qt-dir=/usr/local/qt in SEQ directory. I still receive the same error.

I have a question. Is it normal that i'm missing qtstring.h in the /include directory of where my QT is installed?

grrrr
12-29-2001, 01:31 AM
I am getting this as well... everytthing else seemed to go ok.. has there been a resolution to this yet?

grrrr
12-30-2001, 09:51 AM
I really am trying to figure this out on my own and have discovered this much anyway. At the end of the g++3 command line that generates these errors I see

-L/usr/lib/qt/lib -lqt-mt ..... as a command arg

Since I have installed qt-2.3.2 that directory does not exist. How do I fix it to where it is referencing the correct directory?

Thanks in advance.

casey
12-30-2001, 10:02 AM
first figure out where you put qt, for example, if you put qt in /usr/local/lib/qt-2.3.2 (this dir has a lib, include and bin subdirectory at minimum), then do this when you configure showeq

./configure QTDIR=/usr/local/lib/qt-2.3.2

and the build will use the qt libraries, headers and moc that are based at that directory.