[mythtv] Mythtv r19972 compile error on OpenSUSE

Robert McNamara robert.mcnamara at gmail.com
Thu Feb 12 02:31:25 UTC 2009


On Wed, Feb 11, 2009 at 6:23 PM, Paul Bender <pebender at san.rr.com> wrote:
> Robert McNamara wrote:
>>
>> On Wed, Feb 11, 2009 at 5:29 PM, Eric Bosch <eric.bosch at comcast.net>
>> wrote:
>>>
>>> Are there any plans to rectify this soon?  It seems that other
>>> distribution
>>> are  making the move to QT4.5.  I use Gentoo, however it looks like there
>>> are other issues to overcome before I can get this latest update to work,
>>> as
>>> it also seems to break other packages as well.
>>>
>>> Janne Grunau wrote:
>>>>
>>>> On Wednesday 11 February 2009 14:21:01 Wilfred van den Assem wrote:
>>>>>
>>>>> Hello,
>>>>>
>>>>> Today, I want to compile a recent version of mythtv. First I've
>>>>> updated my OpenSUSE 11.1 system.
>>>>> QT must be update so kde4 can be updated.
>>>>> Now, the current QT4 version is 4.4.90+20090211-x86_64
>>>>
>>>> This is probably a Qt 4.5 snapshot.
>>>>
>>>>> When I try to compile it stops with the following error:
>>>>>
>>>>> <CUT>
>>>>> ccache g++ -c -m64 -pipe -march=k8 -fomit-frame-pointer -O3 -Wall
>>>>> -Wno-switch -Wpointer-arith -Wredundant-decls -Wno-non-virtual-dtor
>>>>> -funit-at-a-time -D__STDC_CONSTANT_MACROS -I/opt/kde3/include/artsc
>>>>> -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
>>>>> -D_REENTRANT -DMMX -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DUSING_X11
>>>>> -DUSING_XV -DUSING_IVTV -DUSING_XVMC -DUSING_XVMC_VLD -DUSING_XRANDR
>>>>> -DUSING_OPENGL_VSYNC -DUSING_ALSA -DUSING_ARTS -DUSING_JACK
>>>>> -DUSING_OSS -DQT_NO_DEBUG -DQT_SQL_LIB -DQT_XML_LIB -DQT_OPENGL_LIB
>>>>> -DQT_GUI_LIB -DQT_NETWORK_LIB-DQT_CORE_LIB -DQT_SHARED
>>>>> -I/usr/share/qt4/mkspecs/default -I. -I/usr/include/QtCore
>>>>> -I/usr/include/QtNetwork -I/usr/include/QtGui -I/usr/include/QtOpenGL
>>>>> -I/usr/include/QtXml -I/usr/include/QtSql -I/usr/include
>>>>> -I/usr/local/include -I/usr/include -I../.. -I../../libs
>>>>> -I../../libs/libmyth -I../../libs/libmythtv -I../../libs/libavutil
>>>>> -I../../libs/libavformat -I../../libs/libavcodec
>>>>> -I../../libs/libmythupnp -I../../libs/libmythui
>>>>> -I../../libs/libmythlivemedia -I../../libs/libmythdb
>>>>> -I../../libmythhdhomerun -I../../libs/libmythdvdnav
>>>>> -I/usr/X11R6/include -I. -I. -o playbackbox.o playbackbox.cpp
>>>>> /usr/include/QtCore/qvariant.h: In member function 'void
>>>>> PlaybackBox::processNetworkControlCommand(const QString&)':
>>>>> /usr/include/QtCore/qvariant.h:408: fout: 'QVariant::QVariant(void*)'
>>>>> is private
>>>>> playbackbox.cpp:3054: fout: within this context
>>>>> make[2]: *** [playbackbox.o] Fout 1
>>>>> make[2]: Map '/usr/src/mythtv/trunk/mythtv/programs/mythfrontend'
>>>>> wordt verlaten
>>>>> make[1]: *** [sub-mythfrontend-install_subtargets] Fout 2
>>>>> make[1]: Map '/usr/src/mythtv/trunk/mythtv/programs' wordt verlaten
>>>>> make: *** [sub-programs-install_subtargets-ordered] Fout 2
>>>>>
>>>>> Is this a QT4 problem or mythtv?
>>>>
>>>> Both, using a void* directly in a QVarient with Qt4.5 seems not longer
>>>> possible since the constructor is private. It works without problems wit
>>>> Qt
>>>> 4.3 and Qt 4.4
>>>>
>>>> Janne
>>>> _______________________________________________
>>>> mythtv-dev mailing list
>>>> mythtv-dev at mythtv.org
>>>> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
>>>>
>>> _______________________________________________
>>> mythtv-dev mailing list
>>> mythtv-dev at mythtv.org
>>> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
>>>
>>
>> It's not a Qt 4.5 problem.  I am building myth on 4.5 now, and my
>> qvariant.h is different from this one-- Whatever it is, it appears not
>> to be from either the Qt 4.5 Beta or release candidate-- both of which
>> myth builds and runs fine against.
>
> I do not believe that this is correct. The following is a diff of the beta1
> and rc1 tarballs from <ftp://ftp.trolltech.com/qt/source/>
>
> -----
>
> --- qt-x11-opensource-src-4.5.0-beta1/src/corelib/kernel/qvariant.h
> 2008-12-17 09:16:41.000000000 -0800
> +++ qt-x11-opensource-src-4.5.0-rc1/src/corelib/kernel/qvariant.h 2009-02-04
> 08:05:28.000000000 -0800
> @@ -1,6 +1,6 @@
>
> /****************************************************************************
>  **
> -** Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies).
> +** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
>  ** Contact: Qt Software Information (qt-info at nokia.com)
>  **
>  ** This file is part of the QtCore module of the Qt Toolkit.
> @@ -404,6 +404,8 @@
>     bool cmp(const QVariant &other) const;
>
>  private:
> +    // force compile error, prevent QVariant(bool) to be called
> +    inline QVariant(void *) { Q_ASSERT(false); }
>  #ifdef QT_NO_CAST_FROM_ASCII
>     // force compile error when implicit conversion is not wanted
>     inline QVariant(const char *) { Q_ASSERT(false); }
> _______________________________________________
> mythtv-dev mailing list
> mythtv-dev at mythtv.org
> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
>

You're absolutely right, I mistakenly diff'ed the Beta against its own
installed version, d'oh!  The RC does indeed add this change.
Apologies, all.


More information about the mythtv-dev mailing list