[Kde-bindings] smoke and gcc 4.9

Richard Dale richard.j.dale at telefonica.net
Tue Oct 7 06:06:21 UTC 2014


On 08/26/2014 11:04 AM, Ben Cooksley wrote:
> On Tue, Aug 26, 2014 at 10:01 PM, Jonathan Riddell <jr at jriddell.org> wrote:
>> We've had Smoke break very badly since we changed to GCC 4.9 in Kubuntu.
>>
>> /build/buildd/smokeqt-4.14.0/obj-x86_64-linux-gnu/qtcore/smokedata.cpp:933:43:
>> error: expected primary-expression before ')' token
>>           case 157: return (void*)(iterator*)xptr;
>>                                             ^
>> /build/buildd/smokeqt-4.14.0/obj-x86_64-linux-gnu/qtcore/smokedata.cpp:933:44:
>> error: expected ';' before 'xptr'
>>           case 157: return (void*)(iterator*)xptr;
>>                                              ^
>>
>> /build/buildd/smokeqt-4.14.0/obj-x86_64-linux-gnu/qtcore/x_3.cpp: In member
>> function 'void __smokeqtcore::x_QBitArray::x_36(Smoke::Stack)':
>> /build/buildd/smokeqt-4.14.0/obj-x86_64-linux-gnu/qtcore/x_3.cpp:1003:57:
>> error: ISO C++ forbids taking the address of an unqualified or parenthesized
>> non-static member function to form a pointer to member function.  Say
>> '&__smokeqtcore::x_QBitArray::operator=' [-fpermissive]
>>           x[0].s_class = (void*)&this->QBitArray::operator=;
>>
>>
>> And many other such errors.
>> https://launchpadlibrarian.net/183039881/buildlog_ubuntu-utopic-amd64.smokeqt_4%3A4.14.0-0ubuntu1_FAILEDTOBUILD.txt.gz
>>
>> Worse it doesn't get fixed by just setting the environment variable to
>> CC=gcc-4.8 as I'd normally do, I suspect smokegen doesn't use the
>> environment variables I'd expect it to use.
>>
>> Does anyone have similar experiences or thoughts?
>
> Smokegen has been extremely unreliable on the CI system since we
> enabled debug mode in Qt. Most of the time it triggers asserts in
> QList and promptly dies.
>
> Given the lack of response to my requests to kde-bindings at kde.org to
> have this fixed I suspect Smokegen and everything dependent on it is
> defacto unmaintained.
>

I'm afraid I haven't been reading the kde-bindings list recently and I 
missed your reports. I'll try and have a look at the bug reports on the 
launchpad link above. Smokegen always used to be reliable, and I'm not 
sure what has changed. There were some pretty 'hacky' changes made to 
extract parameter names I noticed, and I wonder if that has introduced 
some bugs.

At the Akademy in Brno I managed to get it to generate smoke libraries 
for all the Qt5 modules (in the smokeqt 'Qt5' branch). There is still 
some work to do as it builds on my Intel based work laptop, but not on 
my ARM based personal laptop. It isn't anything major though, and maybe 
the launchpad errors and Jonathan's GCC 4.9 problems aren't going to be 
too hard to fix either.

-- Richard



More information about the Kde-bindings mailing list