PDA

View Full Version : Qwt with Qt for S60



Kazakus
13th October 2009, 17:28
Hi,
I'm trying to use Qwt in Qt for S60. I've managed to compile Qwt for WINSCW (emulator), but I can't manage to compile the supplied examples :eek: for example radio:
Here are the compile errors:

mwldsym2.exe: Undefined symbol: 'QwtThermo::QwtThermo(class QWidget *) (??0QwtTh
ermo@@QAE@PAVQWidget@@@Z)'
mwldsym2.exe: referenced from 'Thermo::Thermo(class QString const &, class QWidg
et *) (??0Thermo@@QAE@ABVQString@@PAVQWidget@@@Z)' in ampfrm.cpp:79
mwldsym2.exe: referenced from 'TuningThermo::TuningThermo(class QWidget *) (??0T
uningThermo@@QAE@PAVQWidget@@@Z)' in tunerfrm.cpp:15
......
mwldsym2.exe: referenced from 'void TunerFrame::adjustFreq(double) (?adjustFreq@
TunerFrame@@AAEXN@Z)' in tunerfrm.cpp:85
mwldsym2.exe: referenced from 'void TunerFrame::adjustFreq(double) (?adjustFreq@
TunerFrame@@AAEXN@Z)' in tunerfrm.cpp:87
mwldsym2.exe: Undefined symbol: 'class QwtRoundScaleDraw * QwtKnob::scaleDraw(vo
id) (?scaleDraw@QwtKnob@@QAEPAVQwtRoundScaleDraw@@XZ)'
mwldsym2.exe: referenced from 'class QSize Knob::sizeHint(void) const (?sizeHint
@Knob@@UBE?AVQSize@@XZ)' in ampfrm.cpp:39
....
mwldsym2.exe: referenced from 'TunerFrame::TunerFrame(class QWidget *) (??0Tuner
Frame@@QAE@PAVQWidget@@@Z)' in tunerfrm.cpp:43
mwldsym2.exe: Undefined symbol: 'void QwtAbstractScale::setScaleMaxMinor(int) (?
setScaleMaxMinor@QwtAbstractScale@@QAEXH@Z)'
mwldsym2.exe: referenced from 'TunerFrame::TunerFrame(class QWidget *) (??0Tuner
Frame@@QAE@PAVQWidget@@@Z)' in tunerfrm.cpp:45
.....
mwldsym2.exe: referenced from 'TunerFrame::TunerFrame(class QWidget *) (??0Tuner
Frame@@QAE@PAVQWidget@@@Z)' in tunerfrm.cpp:52
mwldsym2.exe: Undefined symbol: 'void QwtWheel::setTotalAngle(double) (?setTotal
Angle@QwtWheel@@QAEXN@Z)'
mwldsym2.exe: referenced from 'TuningThermo::TuningThermo(class QWidget *) (??0T
uningThermo@@QAE@PAVQWidget@@@Z)' in tunerfrm.cpp:16

Errors caused tool to abort.
make[2]: *** [\Dev\S60_5th_Edition_SDK_v1.0\epoc32\release\winsc w\udeb\radio.exe
] Error 1
make[1]: *** [TARGETRADIO_0XEF759F7E] Error 2
make[1]: Leaving directory `D:/Dev/qwt-5.2/examples/radio'
make -r -f "\Dev\S60_5th_Edition_SDK_v1.0\EPOC32\BUILD\Dev\qwt-5.2\examples\r
adio\WINSCW.make" FINAL CFG=UDEB VERBOSE=-s
make[1]: Entering directory `D:/Dev/qwt-5.2/examples/radio'
make -s -C \Dev\qwt-5.2\examples\radio -f "MAKEFILE_0XEF759F7E.MK" TO_ROOT=..\.
.\..\.. EPOCBLD=\Dev\S60_5th_Edition_SDK_v1.0\EPOC32\BUILD \MAKEFILE_0XEF759F7E\W
INSCW TO_BLDINF=..\..\..\..\Dev\qwt-5.2\examples\radio PLATFORM=WINSCW CFG=UDEB
FINAL
make[1]: Leaving directory `D:/Dev/qwt-5.2/examples/radio'

and from Carbide:

http://i047.radikal.ru/0910/d2/0fc7961fe39c.jpg

Looks like something with includes, but they looks like this and seems like ok:
http://s39.radikal.ru/i083/0910/6a/827f96c67866.jpg

Also I've tryed to put qwt.dll everywere it can be found (pro file have LIBS to it), but result is the same :crying: Any ideas?

Kazakus
14th October 2009, 09:31
Seems like I found the answer to my problem:
http://wiki.forum.nokia.com/index.php?title=Special:PdfPrint&page=Common_build_problems_in_Symbian_C%2B%2B

Kazakus
15th October 2009, 06:08
Ok, the problem was a little more complicated as described in that document: qwt_global.h header defines library export directives only for windows, so under symbian were builded empty lib.