Building gnuradio's gr-qtgui with qt 4.6

Hi,

I’m trying to build gnuradio 3.2.2 under openSUSE 11.2, 32bit. I’ve
installed the latest KDE4 release, so this packages are installed:
[email protected]:~/local/src/gnuradio-3.2.2> rpm -qa | grep libqt4
libqt4-qt3support-4.6.2-3.1.i586
libqt4-devel-doc-data-4.6.2-5.1.noarch
libqt4-devel-doc-4.6.2-5.1.i586
libqt4-sql-mysql-4.6.2-5.1.i586
libqt4-sql-sqlite-4.6.2-3.1.i586
libqt4-4.6.2-3.1.i586
libqt4-sql-4.6.2-3.1.i586
libqt4-x11-4.6.2-3.1.i586
libqt4-devel-4.6.2-3.1.i586

The make process exists with the errors appended to this mail. I hope
this report is useful for somebody. For now, I’m building with
–disable-gr-qtgui.

Regards,
Gregor

libtool: compile: g++ -DHAVE_CONFIG_H -I. -I…/…/…
-DOMNITHREAD_POSIX=1 -I/usr/include
-I/home/ich/local/src/gnuradio-3.2.2/omnithread
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/runtime
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/general
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/general
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/gengen
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/gengen
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/filter
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/filter
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/missing
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/reed-solomon
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/viterbi
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/io
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/g72x
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/swig
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/hier
-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/swig
-I/home/ich/local/src/gnuradio-3.2.2/gruel/src/include
-I/home/ich/local/src/gnuradio-3.2.2/gruel/src/include
-I/usr/include/python2.6 -I/usr/include/qwt -I/usr/include/qwtplot3d
-DQT_SHARED -I/usr/include/QtCore -DQT_SHARED -I/usr/include/QtGui
-I/usr/include/QtCore -I. -g -O2 -Wall -Woverloaded-virtual -pthread
-MT FrequencyDisplayPlot_moc.lo -MD -MP -MF
.deps/FrequencyDisplayPlot_moc.Tpo -c FrequencyDisplayPlot_moc.cc
-fPIC -DPIC -o .libs/FrequencyDisplayPlot_moc.o
TimeDomainDisplayPlot_moc.cc:14:2: error: #error “This file was
generated using the moc from 4.5.0. It”
TimeDomainDisplayPlot_moc.cc:15:2: error: #error “cannot be used with
the include files from this version of Qt.”
TimeDomainDisplayPlot_moc.cc:16:2: error: #error “(The moc has changed
too much.)”
FrequencyDisplayPlot_moc.cc:14:2: error: #error “This file was
generated using the moc from 4.5.0. It”
FrequencyDisplayPlot_moc.cc:15:2: error: #error “cannot be used with
the include files from this version of Qt.”
FrequencyDisplayPlot_moc.cc:16:2: error: #error “(The moc has changed
too much.)”
spectrumdisplayform_moc.cc:14:2: error: #error “This file was
generated using the moc from 4.5.0. It”
spectrumdisplayform_moc.cc:15:2: error: #error “cannot be used with
the include files from this version of Qt.”
spectrumdisplayform_moc.cc:16:2: error: #error “(The moc has changed too
much.)”
In file included from TimeDomainDisplayPlot.h:11,
from TimeDomainDisplayPlot_moc.cc:10:
/usr/include/qwt/qwt_plot_picker.h:106: warning: ‘virtual void
QwtPlotPicker::move(const QPoint&)’ was hidden
/usr/include/qwt/qwt_plot_zoomer.h:88: warning: by ‘virtual void
QwtPlotZoomer::move(double, double)’
make[5]: *** [TimeDomainDisplayPlot_moc.lo] Fehler 1
make[5]: *** Warte auf noch nicht beendete Prozesse…
In file included from FrequencyDisplayPlot.h:11,
from FrequencyDisplayPlot_moc.cc:10:
/usr/include/qwt/qwt_plot_picker.h:106: warning: ‘virtual void
QwtPlotPicker::move(const QPoint&)’ was hidden
/usr/include/qwt/qwt_plot_zoomer.h:88: warning: by ‘virtual void
QwtPlotZoomer::move(double, double)’
make[5]: *** [FrequencyDisplayPlot_moc.lo] Fehler 1
In file included from ./FrequencyDisplayPlot.h:11,
from spectrumdisplayform_ui.h:13,
from spectrumdisplayform.h:4,
from spectrumdisplayform_moc.cc:10:
/usr/include/qwt/qwt_plot_picker.h:106: warning: ‘virtual void
QwtPlotPicker::move(const QPoint&)’ was hidden
/usr/include/qwt/qwt_plot_zoomer.h:88: warning: by ‘virtual void
QwtPlotZoomer::move(double, double)’
In file included from ./Waterfall3DDisplayPlot.h:7,
from spectrumdisplayform_ui.h:30,
from spectrumdisplayform.h:4,
from spectrumdisplayform_moc.cc:10:
/usr/include/qwtplot3d/qwt3d_function.h:30: warning: ‘virtual bool
Qwt3D::Function::create(Qwt3D::SurfacePlot&)’ was hidden
./waterfallGlobalData.h:56: warning: by ‘virtual bool
Waterfall3DData::create()’
In file included from /usr/include/qwtplot3d/qwt3d_colorlegend.h:7,
from /usr/include/qwtplot3d/qwt3d_coordsys.h:5,
from /usr/include/qwtplot3d/qwt3d_plot.h:4,
from /usr/include/qwtplot3d/qwt3d_surfaceplot.h:4,
from ./Waterfall3DDisplayPlot.h:8,
from spectrumdisplayform_ui.h:30,
from spectrumdisplayform.h:4,
from spectrumdisplayform_moc.cc:10:
/usr/include/qwtplot3d/qwt3d_color.h:22: warning: ‘virtual Qwt3D::RGBA
Qwt3D::Color::operator()(const Qwt3D::Triple&) const’ was hidden
/usr/include/qwtplot3d/qwt3d_color.h:44: warning: by ‘virtual
Qwt3D::RGBA Qwt3D::StandardColor::operator()(double, double, double)
const’
In file included from spectrumdisplayform_ui.h:30,
from spectrumdisplayform.h:4,
from spectrumdisplayform_moc.cc:10:
/usr/include/qwtplot3d/qwt3d_color.h:22: warning: ‘virtual Qwt3D::RGBA
Qwt3D::Color::operator()(const Qwt3D::Triple&) const’ was hidden
./Waterfall3DDisplayPlot.h:18: warning: by ‘virtual Qwt3D::RGBA
Waterfall3DColorMap::operator()(double, double, double) const’
make[5]: *** [spectrumdisplayform_moc.lo] Fehler 1
make[5]: Leaving directory
/home/ich/local/src/gnuradio-3.2.2/gr-qtgui/src/lib' make[4]: *** [all] Fehler 2 make[4]: Leaving directory/home/ich/local/src/gnuradio-3.2.2/gr-qtgui/src/lib’
make[3]: *** [all-recursive] Fehler 1
make[3]: Leaving directory
/home/ich/local/src/gnuradio-3.2.2/gr-qtgui/src' make[2]: *** [all-recursive] Fehler 1 make[2]: Leaving directory/home/ich/local/src/gnuradio-3.2.2/gr-qtgui’
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/ich/local/src/gnuradio-3.2.2’
make: *** [all] Fehler 2

On Mon, Mar 22, 2010 at 12:44:52AM +0100, Gregor D. wrote:

libqt4-4.6.2-3.1.i586
libqt4-sql-4.6.2-3.1.i586
libqt4-x11-4.6.2-3.1.i586
libqt4-devel-4.6.2-3.1.i586

The make process exists with the errors appended to this mail. I hope
this report is useful for somebody. For now, I’m building with
–disable-gr-qtgui.

Regards,
Gregor

Try:

make clean
./bootstrap
./configure
make && make check
sudo make install

Eric

-I/home/ich/local/src/gnuradio-3.2.2/gnuradio-core/src/lib/missing
-DQT_SHARED -I/usr/include/QtCore -DQT_SHARED -I/usr/include/QtGui
-I/usr/include/QtCore -I. -g -O2 -Wall -Woverloaded-virtual -pthread
-MT FrequencyDisplayPlot_moc.lo -MD -MP -MF
.deps/FrequencyDisplayPlot_moc.Tpo -c FrequencyDisplayPlot_moc.cc
-fPIC -DPIC -o .libs/FrequencyDisplayPlot_moc.o
TimeDomainDisplayPlot_moc.cc:14:2: error: #error “This file was
generated using the moc from 4.5.0. It”
TimeDomainDisplayPlot_moc.cc:15:2: error: #error “cannot be used with
the include files from this version of Qt.”
TimeDomainDisplayPlot_moc.cc:16:2: error: #error “(The moc has changed
too much.)”

[snip]

make clean
./bootstrap
./configure
make && make check
sudo make install

Eric

At first that wasn’t successful. Then I’ve taken a deeper look into
the make process:
gr-qtgui/src/lib/Makefile.am
[…]
if BUILD_QT
%_moc.cc : %.h
$(QT_MOC_EXEC) -DQT_SHARED -DQT_NO_DEBUG -DQT_OPENGL_LIB
-DQT_GUI_LIB -DQT_CORE_LIB $< -o [email protected]

%_ui.h : %.ui
$(QT_UIC_EXEC) $< -o [email protected]
else
%_moc.cc : %.h
touch [email protected]

%_ui.h : %.ui
touch [email protected]
endif
[…]

So BUILD_QT needs to be true, which is set in config/grc_gr_qtgui.m4
if “[PyQt4.QtCore.PYQT_VERSION >= 260000]”.
-> I needed to install python-qt4-devel. After that, everything compiles
fine.

I suggest to have python-qt4-devel as an obligational dependency for
gr-qtgui, so that—if that package is missing—the ./configure step
won’t mark gr-qtgui as build-able. Also, if the moc-files hadn’t be
included in the tar-ball, they would have been needed to build.

Regards,
Gregor

On Tue, Mar 23, 2010 at 6:44 PM, Gregor D. [email protected]
wrote:

At first that wasn’t successful. Then I’ve taken a deeper look into
else
-> I needed to install python-qt4-devel. After that, everything compiles fine.

I suggest to have python-qt4-devel as an obligational dependency for
gr-qtgui, so that—if that package is missing—the ./configure step
won’t mark gr-qtgui as build-able. Also, if the moc-files hadn’t be
included in the tar-ball, they would have been needed to build.

Regards,
Gregor

Yes, you’re right, this should be an explicit requirement. I thought
it was, but it slipped through the cracks. I’ll put it on my todo
list.

Tom

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs