trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: May 2011

Re: [trinity-devel] kdebase - 'QWIDGET_OBJECT_NAME_STRING' was not declared in this scope

From: "Timothy Pearson" <kb9vqf@...>
Date: Thu, 12 May 2011 11:37:18 -0500
> On 05/12/2011 10:25 AM, David C. Rankin wrote:
>> On 05/12/2011 08:55 AM, David C. Rankin wrote:
>>> On 05/12/2011 01:40 AM, Timothy Pearson wrote:
>>>>> /build/src/build/kcontrol/style/stylepreview.ui.h:36:32: error:
>>>>> > 'QWIDGET_OBJECT_NAME_STRING' was not declared in this scope
/build/src/build/kcontrol/style/stylepreview.ui.h:43:41: error:
'Q_NoFocus' was
>>>>> > not declared in this scope
>>>>> > make[2]: ***
>>>>> > [kcontrol/style/CMakeFiles/kcm_style-module.dir/stylepreview.cpp.o]
Error 1
>>>>> > make[2]: Leaving directory `/build/src/build'
>>>>> > make[1]: *** [kcontrol/style/CMakeFiles/kcm_style-module.dir/all]
>>>>> Error 2
>>>>> > make[1]: Leaving directory `/build/src/build'
>>>>> > make: *** [all] Error 2
>>>>> > ==> ERROR: A failure occurred in build().
>>>>> > Aborting...
>>>>> > Is this a build error on my end, or is this a CMake or header
>>>>> issue?
>>>> Looks like you have an old version of TQt3 installed. Look for any
outdated versions of the tqt.h header file that are available on your
system and remove them.
>>>> Tim
>>> Thanks Tim,
>>> It must be in the svn code then. All tqt file were from tqtinterface
that was
>>> downloaded from the server yesterday. (Tuesday at the earliest). May
10 21:37 trinity-tqtinterface-1230411-1-x86_64.pkg.tar.xz
>>> I've rebuilt tqtinterface with the code just a minute ago and I've
kicked off
>>> the kdebase build again. I'll report back.
>> That build failed at the same place, so I went back an rebuilt Qt3
(patched from
>> 3.3.8b with the 3.3.8c patch from:
>> http://www.trinitydesktop.org/wiki/pub/Developers/Qt3/qt3_3.3.8c.diff I
then built tqtinterface again from the current code, I then kicked
off
>> the
>> kdebase build again and it still fails at the same place:
>> [ 16%] Building CXX object
>> kcontrol/style/CMakeFiles/kcm_style-module.dir/stylepreview.cpp.o cd
/build/src/build/kcontrol/style && /usr/bin/c++
>> -Dkcm_style_module_EXPORTS
>> -DHAVE_CONFIG_H -march=x86-64 -mtune=generic -O2 -pipe
>> -DQT_NO_ASCII_CAST
>> -DQT_CLEAN_NAMESPACE -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION
-DQT_THREAD_SUPPORT -D_REENTRANT -include tqt.h -fPIC
>> -I/build/src/build/kcontrol/style -I/build/src/build
>> -I/opt/trinity/include
>> -I/opt/qt/include -I/opt/qt/include/tqt -o
>> CMakeFiles/kcm_style-module.dir/stylepreview.cpp.o -c
>> /build/src/build/kcontrol/style/stylepreview.cpp
>> In file included from
>> /build/src/build/kcontrol/style/stylepreview.cpp:30:0:
>> /build/src/build/kcontrol/style/stylepreview.ui.h: In member function
'virtual
>> void StylePreview::init()':
>> /build/src/build/kcontrol/style/stylepreview.ui.h:36:32: error:
'QWIDGET_OBJECT_NAME_STRING' was not declared in this scope
>> /build/src/build/kcontrol/style/stylepreview.ui.h:43:41: error:
'Q_NoFocus' was
>> not declared in this scope
>> make[2]: ***
>> [kcontrol/style/CMakeFiles/kcm_style-module.dir/stylepreview.cpp.o]
Error 1
>> make[2]: Leaving directory `/build/src/build'
>> make[1]: *** [kcontrol/style/CMakeFiles/kcm_style-module.dir/all] Error 2
>> make[1]: Leaving directory `/build/src/build'
>> make: *** [all] Error 2
>> ==> ERROR: A failure occurred in build().
>> Aborting...
>> Build failed, check /dat_e/david/bld/david/build
>> Dunno. This is one of those "It built 3 days ago, but won't build now."
things.
>> No change to my kdebase build script. I'll go tinker with the build
script, but
>> I'm a bit stumped...
> It doesn't like the following line (^^^^). Is this another gcc 4.6
issue?
> #include <tqobjectlist.h>
> void StylePreview::init()
> {
>      // Ensure that the user can't toy with the child widgets.
>      // Method borrowed from Qt's qtconfig.
>      QObjectList* l = queryList(QWIDGET_OBJECT_NAME_STRING);
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>      QObjectListIt it(*l);
>      QObject* obj;
>      while ((obj = it.current()) != 0)
>      {
>          ++it;
>          obj->installEventFilter(this);
>          ((QWidget*)obj)->setFocusPolicy(Q_NoFocus);
>      }
>      delete l;
> }

OK, it looks like there is definitely an error in the code you
highlighted.  QWIDGET_OBJECT_NAME_STRING should be
TQWIDGET_OBJECT_NAME_STRING.  This is caused by an overagressive
tqt-replace and has been fixed in SVN revision 1231611.  This means you
will have to recompile and reinstall tqtinterface from the latest SVN
sources.

Tim