Qt-interest Archive, March 2002
Using ddd with Qt
Message 1 in thread
So I installed the ddd debugger to use with Qt. Can someone give me a
tip as to how I can get the value of a QString displayed as text?
Thanks,
Aaron
Message 2 in thread
Hi,
> So I installed the ddd debugger to use with Qt. Can someone give me a
> tip as to how I can get the value of a QString displayed as text?
See for example http://qt-interest.trolltech.com/dlv3.html
Dimitri
Message 3 in thread
Hello List,
I' ve update my qt2.3.1 with qt-3.0.2.
The installation was done without any errors,
only some warnings.
I have the following warnings with any source:(
Any hints?
Greetings
Andre
--------------- schnipp ------------------------
make generate some failure like this:
g++ -c -pipe -Wall -W -O2 -DNO_DEBUG -I/usr/lib/qt/include -o
malprog1.o malprog1.cpp
g++ -o exe malprog1.o -L/usr/lib/qt/lib -L/usr/X11R6/lib -lXext
-lm -lSM -lICE -lpng -ljpeg -lXt -lsqlplus -lqt -lXext -lX11 -lm
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster.12QPaintDevice+0xc):
undefined reference to
`QPaintDevice::setX11Data(QPaintDeviceX11Data const *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x1c): undefined
reference to `QWidget::setName(char const *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x30): undefined
reference to `QObject::childEvent(QChildEvent *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x70): undefined
reference to `QWidget::unsetCursor(void)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x74): undefined
reference to `QWidget::setMask(QBitmap const &)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x7c): undefined
reference to `QWidget::setCaption(QString const &)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x84): undefined
reference to `QWidget::setIconText(QString const &)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xa8): undefined
reference to `QWidget::showMinimized(void)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xac): undefined
reference to `QWidget::showMaximized(void)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xb0): undefined
reference to `QWidget::showNormal(void)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xb4): undefined
reference to `QWidget::polish(void)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xd0): undefined
reference to `QWidget::minimumSizeHint(void) const'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xd4): undefined
reference to `QWidget::sizePolicy(void) const'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xd8): undefined
reference to `QWidget::heightForWidth(int) const'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xe0): undefined
reference to `QWidget::reparent(QWidget *, unsigned int, QPoint
const &, bool)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xe8): undefined
reference to `QWidget::setAutoMask(bool)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xec): undefined
reference to `QWidget::customWhatsThis(void) const'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x100): undefined
reference to `QWidget::wheelEvent(QWheelEvent *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x12c): undefined
reference to `QWidget::dragEnterEvent(QDragEnterEvent *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x130): undefined
reference to `QWidget::dragMoveEvent(QDragMoveEvent *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x134): undefined
reference to `QWidget::dragLeaveEvent(QDragLeaveEvent *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x138): undefined
reference to `QWidget::dropEvent(QDropEvent *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x13c): undefined
reference to `QWidget::showEvent(QShowEvent *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x140): undefined
reference to `QWidget::hideEvent(QHideEvent *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x144): undefined
reference to `QWidget::customEvent(QCustomEvent *)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x14c): undefined
reference to `QWidget::updateMask(void)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x150): undefined
reference to `QWidget::styleChange(QStyle &)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x170): undefined
reference to `QWidget::setWState(unsigned int)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x184): undefined
reference to `QWidget::setKeyCompression(bool)'
malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x188): undefined
reference to `QWidget::setMicroFocusHint(int, int, int, int, bool)'
malprog1.o: In function `MalFenster::paintEvent(QPaintEvent *)':
malprog1.o(.MalFenster::gnu.linkonce.t.paintEvent(QPaintEvent *)
+0x29): undefined reference to `bitBlt(QPaintDevice *, int, int,
QPaintDevice const *, int, int, int, int, Qt::RasterOp, bool)'
malprog1.o: In function `MalFenster::resizeEvent(QResizeEvent *)':
malprog1.o(.MalFenster::gnu.linkonce.t.resizeEvent(QResizeEvent *)
+0x3a): undefined reference to `Qt::white'
malprog1.o(.MalFenster::gnu.linkonce.t.resizeEvent(QResizeEvent *)
+0x5f): undefined reference to `bitBlt(QPaintDevice *, int, int,
QPaintDevice const *, int, int, int, int, Qt::RasterOp, bool)'
collect2: ld returned 1 exit status
make: *** [exe] Error 1
Message 4 in thread
Looks like it can't find the new qt libraries? Are you sure you installed
qt3 to /usr/lib/qt/lib and not /usr/local/qt/lib?
-Calin
On Sat, 2 Mar 2002, Andre Heine wrote:
> Hello List,
>
> I' ve update my qt2.3.1 with qt-3.0.2.
> The installation was done without any errors,
> only some warnings.
>
> I have the following warnings with any source:(
>
>
> Any hints?
>
> Greetings
>
> Andre
>
> --------------- schnipp ------------------------
>
> make generate some failure like this:
>
> g++ -c -pipe -Wall -W -O2 -DNO_DEBUG -I/usr/lib/qt/include -o
> malprog1.o malprog1.cpp
> g++ -o exe malprog1.o -L/usr/lib/qt/lib -L/usr/X11R6/lib -lXext
> -lm -lSM -lICE -lpng -ljpeg -lXt -lsqlplus -lqt -lXext -lX11 -lm
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster.12QPaintDevice+0xc):
> undefined reference to
> `QPaintDevice::setX11Data(QPaintDeviceX11Data const *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x1c): undefined
> reference to `QWidget::setName(char const *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x30): undefined
> reference to `QObject::childEvent(QChildEvent *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x70): undefined
> reference to `QWidget::unsetCursor(void)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x74): undefined
> reference to `QWidget::setMask(QBitmap const &)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x7c): undefined
> reference to `QWidget::setCaption(QString const &)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x84): undefined
> reference to `QWidget::setIconText(QString const &)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xa8): undefined
> reference to `QWidget::showMinimized(void)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xac): undefined
> reference to `QWidget::showMaximized(void)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xb0): undefined
> reference to `QWidget::showNormal(void)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xb4): undefined
> reference to `QWidget::polish(void)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xd0): undefined
> reference to `QWidget::minimumSizeHint(void) const'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xd4): undefined
> reference to `QWidget::sizePolicy(void) const'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xd8): undefined
> reference to `QWidget::heightForWidth(int) const'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xe0): undefined
> reference to `QWidget::reparent(QWidget *, unsigned int, QPoint
> const &, bool)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xe8): undefined
> reference to `QWidget::setAutoMask(bool)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xec): undefined
> reference to `QWidget::customWhatsThis(void) const'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x100): undefined
> reference to `QWidget::wheelEvent(QWheelEvent *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x12c): undefined
> reference to `QWidget::dragEnterEvent(QDragEnterEvent *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x130): undefined
> reference to `QWidget::dragMoveEvent(QDragMoveEvent *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x134): undefined
> reference to `QWidget::dragLeaveEvent(QDragLeaveEvent *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x138): undefined
> reference to `QWidget::dropEvent(QDropEvent *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x13c): undefined
> reference to `QWidget::showEvent(QShowEvent *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x140): undefined
> reference to `QWidget::hideEvent(QHideEvent *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x144): undefined
> reference to `QWidget::customEvent(QCustomEvent *)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x14c): undefined
> reference to `QWidget::updateMask(void)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x150): undefined
> reference to `QWidget::styleChange(QStyle &)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x170): undefined
> reference to `QWidget::setWState(unsigned int)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x184): undefined
> reference to `QWidget::setKeyCompression(bool)'
> malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x188): undefined
> reference to `QWidget::setMicroFocusHint(int, int, int, int, bool)'
> malprog1.o: In function `MalFenster::paintEvent(QPaintEvent *)':
> malprog1.o(.MalFenster::gnu.linkonce.t.paintEvent(QPaintEvent *)
> +0x29): undefined reference to `bitBlt(QPaintDevice *, int, int,
> QPaintDevice const *, int, int, int, int, Qt::RasterOp, bool)'
> malprog1.o: In function `MalFenster::resizeEvent(QResizeEvent *)':
> malprog1.o(.MalFenster::gnu.linkonce.t.resizeEvent(QResizeEvent *)
> +0x3a): undefined reference to `Qt::white'
> malprog1.o(.MalFenster::gnu.linkonce.t.resizeEvent(QResizeEvent *)
> +0x5f): undefined reference to `bitBlt(QPaintDevice *, int, int,
> QPaintDevice const *, int, int, int, int, Qt::RasterOp, bool)'
> collect2: ld returned 1 exit status
> make: *** [exe] Error 1
>
> --
> List archive and information: http://qt-interest.trolltech.com
>
Message 5 in thread
Hi Calin,
I have built qt3 in /usr/stc/qt. I don't use 'make install'.
I've set QTDIR to /usr/src/qt and the LD_LIBRARY_PATH to
/usr/src/qt/lib.
I that the problem?
Now I tried it with 'make install', but now I get some errors.
I'm guessing, the qt3 wasn't built correctly:(
Bye
Andre
Am Sonntag, 3. März 2002 01:54 schrieb Calin A. Culianu:
> Looks like it can't find the new qt libraries? Are you sure you
> installed qt3 to /usr/lib/qt/lib and not /usr/local/qt/lib?
>
> -Calin
>
> On Sat, 2 Mar 2002, Andre Heine wrote:
> > Hello List,
> >
> > I' ve update my qt2.3.1 with qt-3.0.2.
> > The installation was done without any errors,
> > only some warnings.
> >
> > I have the following warnings with any source:(
> >
> >
> > Any hints?
> >
> > Greetings
> >
> > Andre
> >
> > --------------- schnipp ------------------------
> >
> > make generate some failure like this:
> >
> > g++ -c -pipe -Wall -W -O2 -DNO_DEBUG -I/usr/lib/qt/include -o
> > malprog1.o malprog1.cpp
> > g++ -o exe malprog1.o -L/usr/lib/qt/lib -L/usr/X11R6/lib
> > -lXext -lm -lSM -lICE -lpng -ljpeg -lXt -lsqlplus -lqt -lXext
> > -lX11 -lm
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster.12QPaintDevice+0xc
> >): undefined reference to
> > `QPaintDevice::setX11Data(QPaintDeviceX11Data const *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x1c): undefined
> > reference to `QWidget::setName(char const *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x30): undefined
> > reference to `QObject::childEvent(QChildEvent *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x70): undefined
> > reference to `QWidget::unsetCursor(void)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x74): undefined
> > reference to `QWidget::setMask(QBitmap const &)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x7c): undefined
> > reference to `QWidget::setCaption(QString const &)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x84): undefined
> > reference to `QWidget::setIconText(QString const &)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xa8): undefined
> > reference to `QWidget::showMinimized(void)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xac): undefined
> > reference to `QWidget::showMaximized(void)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xb0): undefined
> > reference to `QWidget::showNormal(void)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xb4): undefined
> > reference to `QWidget::polish(void)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xd0): undefined
> > reference to `QWidget::minimumSizeHint(void) const'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xd4): undefined
> > reference to `QWidget::sizePolicy(void) const'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xd8): undefined
> > reference to `QWidget::heightForWidth(int) const'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xe0): undefined
> > reference to `QWidget::reparent(QWidget *, unsigned int, QPoint
> > const &, bool)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xe8): undefined
> > reference to `QWidget::setAutoMask(bool)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0xec): undefined
> > reference to `QWidget::customWhatsThis(void) const'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x100): undefined
> > reference to `QWidget::wheelEvent(QWheelEvent *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x12c): undefined
> > reference to `QWidget::dragEnterEvent(QDragEnterEvent *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x130): undefined
> > reference to `QWidget::dragMoveEvent(QDragMoveEvent *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x134): undefined
> > reference to `QWidget::dragLeaveEvent(QDragLeaveEvent *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x138): undefined
> > reference to `QWidget::dropEvent(QDropEvent *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x13c): undefined
> > reference to `QWidget::showEvent(QShowEvent *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x140): undefined
> > reference to `QWidget::hideEvent(QHideEvent *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x144): undefined
> > reference to `QWidget::customEvent(QCustomEvent *)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x14c): undefined
> > reference to `QWidget::updateMask(void)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x150): undefined
> > reference to `QWidget::styleChange(QStyle &)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x170): undefined
> > reference to `QWidget::setWState(unsigned int)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x184): undefined
> > reference to `QWidget::setKeyCompression(bool)'
> > malprog1.o(.gnu.linkonce.d.__vt_10MalFenster+0x188): undefined
> > reference to `QWidget::setMicroFocusHint(int, int, int, int,
> > bool)' malprog1.o: In function
> > `MalFenster::paintEvent(QPaintEvent *)':
> > malprog1.o(.MalFenster::gnu.linkonce.t.paintEvent(QPaintEvent
> > *) +0x29): undefined reference to `bitBlt(QPaintDevice *, int,
> > int, QPaintDevice const *, int, int, int, int, Qt::RasterOp,
> > bool)' malprog1.o: In function
> > `MalFenster::resizeEvent(QResizeEvent *)':
> > malprog1.o(.MalFenster::gnu.linkonce.t.resizeEvent(QResizeEvent
> > *) +0x3a): undefined reference to `Qt::white'
> > malprog1.o(.MalFenster::gnu.linkonce.t.resizeEvent(QResizeEvent
> > *) +0x5f): undefined reference to `bitBlt(QPaintDevice *, int,
> > int, QPaintDevice const *, int, int, int, int, Qt::RasterOp,
> > bool)' collect2: ld returned 1 exit status
> > make: *** [exe] Error 1
> >
> > --
> > List archive and information: http://qt-interest.trolltech.com
Message 6 in thread
On Sat, 2002-03-02 at 04:49, Dimitri Papadopoulos wrote:
> See for example http://qt-interest.trolltech.com/dlv3.html
>
Thanks for the link, this makes ddd much more usable.
For future reference:
From reading that thread I added the following to .gbinit (originally
posted by Arnaud de Muyser):
define printqstring
set $i=0
set $unicode=$arg0.d->unicode
printf "Getting QString...\n"
while $i < $arg0.d->len
set $c=$unicode[$i++].cl
if $c < 32
printf "\\0%o", $c
else
if $c <= 127
printf "%c", $c
else
printf "\\0%o", $c
end
end
end
echo \n
end
Which I assume works for Qt 2.4. For Qt 3.0, I had to change the line:
set $c=$unicode[$i++].cl
to:
set $c=$unicode[$i++].ucs
Aaron
Message 7 in thread
On 1 Mar 2002, Aaron Brice wrote:
> So I installed the ddd debugger to use with Qt. Can someone give me a
> tip as to how I can get the value of a QString displayed as text?
>
> Thanks,
> Aaron
You can try running the instance method QString::latin1() or looking at (i
think) the 'data' field (private) of the QString instance.
>
> --
> List archive and information: http://qt-interest.trolltech.com
>
Message 8 in thread
Calin A. Culianu wrote:
> On 1 Mar 2002, Aaron Brice wrote:
>
>
>>So I installed the ddd debugger to use with Qt. Can someone give me a
>>tip as to how I can get the value of a QString displayed as text?
>>
>>Thanks,
>>Aaron
>>
>
>
> You can try running the instance method QString::latin1() or looking at (i
> think) the 'data' field (private) of the QString instance.
>
>
>
>>--
>>List archive and information: http://qt-interest.trolltech.com
>>
>>
>
> --
> List archive and information: http://qt-interest.trolltech.com
>
>
>
In qt-archive you will find --- searching for ddd and qstring --- the
following mail. try it.
Subject: RE: GNU and QString: DEBUGGER DDD GDB
From: "David N S Reeves" <dnsreeves@netzero.net> - other postings
Date: Thu, 18 Jan 2001 08:36:43 -0600
Message-ID: <NEBBIAJCAJOEBIILHEHJEECACBAA.dnsreeves@netzero.net>
-----Original Message-----
From: owner-qt-interest@trolltech.com
[mailto:owner-qt-interest@trolltech.com]On Behalf Of Wilco Greven
Sent: Thursday, January 18, 2001 8:18 AM
To: qt interest
Subject: Re: GNU and QString
On Thu, Jan 18, 2001 at 03:02:03PM +0100, wim delvaux wrote:
> Hi,
>
> Does anybody know how to display QStrings in GNU ?
> I scanned the Archives but find only old pre 2.0 solutions
Do you mean gdb? Then you could add following script to you .gdbinit (thanks
to
David Faure who sent it to the kde-devel mailinglist):
define printqstring
set $i=0
while $i < $arg0.d->len
print $arg0.d->unicode[$i++].cl
end
end
Greetings,
Wilco
cu knut