Russian Qt Forum

Программирование => С/C++ => Тема начата: WILY от Августа 05, 2015, 09:20



Название: переход на 5.5 внезапная ошибка в QGlobal.h
Отправлено: WILY от Августа 05, 2015, 09:20
Доброго времени суток, форумчани!
Вот такая вот ошибка

Код:
E:\_Gleb\QT_Creator_Last\5.5\mingw492_32\include\QtCore\qglobal.h:703: ошибка: invalid application of 'sizeof' to incomplete type 'QStaticAssertFailure<false>'
     enum {Q_STATIC_ASSERT_PRIVATE_JOIN(q_static_assert_result, __COUNTER__) = sizeof(QStaticAssertFailure<!!(Condition)>)}
                                                                                                                         ^

Ссылается на QGlobal.h на строчку

Код
C++ (Qt)
enum {Q_STATIC_ASSERT_PRIVATE_JOIN(q_static_assert_result, __COUNTER__) = sizeof(QStaticAssertFailure<!!(Condition)>)}

Всем бодрого утра!
(http://ic.pics.livejournal.com/ibigdan/8161099/3397094/3397094_original.jpg)


Название: Re: переход на 5.5 внезапная ошибка в QGlobal.h
Отправлено: Пантер от Августа 05, 2015, 09:57
Полный вывод компилятора покажи.


Название: Re: переход на 5.5 внезапная ошибка в QGlobal.h
Отправлено: WILY от Августа 05, 2015, 13:05
Код:
In file included from ..\..\..\QT_Creator_Last\5.5\mingw492_32\include\QtCore/qcoreapplication.h:37:0,
                 from ..\..\..\QT_Creator_Last\5.5\mingw492_32\include\QtCore/QCoreApplication:1,
                 from ..\..\helpme\QXMPP\server\mod_disco.cpp:24:
..\..\..\QT_Creator_Last\5.5\mingw492_32\include/QtCore/qglobal.h:703:121: error: invalid application of 'sizeof' to incomplete type 'QStaticAssertFailure<false>'
     enum {Q_STATIC_ASSERT_PRIVATE_JOIN(q_static_assert_result, __COUNTER__) = sizeof(QStaticAssertFailure<!!(Condition)>)}
                                                                                                                         ^
..\..\..\QT_Creator_Last\5.5\mingw492_32\include/QtCore/qglobal.h:708:47: note: in expansion of macro 'Q_STATIC_ASSERT'
 #define Q_STATIC_ASSERT_X(Condition, Message) Q_STATIC_ASSERT(Condition)
                                               ^
..\..\..\QT_Creator_Last\5.5\mingw492_32\include\QtCore/qplugin.h:139:5: note: in expansion of macro 'Q_STATIC_ASSERT_X'
     Q_STATIC_ASSERT_X(false, "Old plugin system used")
     ^
..\..\helpme\QXMPP\server\mod_disco.cpp:130:1: note: in expansion of macro 'Q_EXPORT_STATIC_PLUGIN2'
 Q_EXPORT_STATIC_PLUGIN2(mod_disco, QXmppServerDiscoveryPlugin)
 ^
..\..\..\QT_Creator_Last\5.5\mingw492_32\include/QtCore/qglobal.h:703:122: error: expected unqualified-id at end of input
     enum {Q_STATIC_ASSERT_PRIVATE_JOIN(q_static_assert_result, __COUNTER__) = sizeof(QStaticAssertFailure<!!(Condition)>)}
                                                                                                                          ^
..\..\..\QT_Creator_Last\5.5\mingw492_32\include/QtCore/qglobal.h:708:47: note: in expansion of macro 'Q_STATIC_ASSERT'
 #define Q_STATIC_ASSERT_X(Condition, Message) Q_STATIC_ASSERT(Condition)
                                               ^
..\..\..\QT_Creator_Last\5.5\mingw492_32\include\QtCore/qplugin.h:139:5: note: in expansion of macro 'Q_STATIC_ASSERT_X'
     Q_STATIC_ASSERT_X(false, "Old plugin system used")
     ^
..\..\helpme\QXMPP\server\mod_disco.cpp:130:1: note: in expansion of macro 'Q_EXPORT_STATIC_PLUGIN2'
 Q_EXPORT_STATIC_PLUGIN2(mod_disco, QXmppServerDiscoveryPlugin)
 ^
Makefile.Release:8541: recipe for target 'release/mod_disco.o' failed
mingw32-make[2]: *** [release/mod_disco.o] Error 1
mingw32-make[2]: Leaving directory 'E:/_Gleb/_HelpMeDev/build-Main-Desktop_Qt_5_5_0_MinGW_32bit-Release/QXMPP'
mingw32-make[1]: *** [release] Error 2
Makefile:34: recipe for target 'release' failed
mingw32-make[1]: Leaving directory 'E:/_Gleb/_HelpMeDev/build-Main-Desktop_Qt_5_5_0_MinGW_32bit-Release/QXMPP'
makefile:93: recipe for target 'sub-QXMPP-make_first' failed
mingw32-make: *** [sub-QXMPP-make_first] Error 2
13:03:16: Процесс «E:\_Gleb\QT_Creator_Last\Tools\mingw492_32\bin\mingw32-make.exe» завершился с кодом 2.
Ошибка при сборке/установке проекта Main (комплект: Desktop Qt 5.5.0 MinGW 32bit)
Во время выполнения этапа «Сборка»


Вся ошибка)


Название: Re: переход на 5.5 внезапная ошибка в QGlobal.h
Отправлено: Пантер от Августа 05, 2015, 13:36
Видно QXmppServerDiscoveryPlugin, в нем и косяк, видимо. Попробуй обновить.


Название: Re: переход на 5.5 внезапная ошибка в QGlobal.h
Отправлено: WILY от Августа 05, 2015, 13:52
нашел проблему, но появилась новая

если закоментить
Код
C++ (Qt)
Q_EXPORT_STATIC_PLUGIN2(mod_disco, QXmppServerDiscoveryPlugin)
то ошибка исчезает, однако, если заменить на другой макрос, как пишут в документации

Код
C++ (Qt)
Q_DECLARE_METATYPE(QXmppServerDiscoveryPlugin)

появляется другая ошибка
Код:
E:\_Gleb\QT_Creator_Last\5.5\mingw492_32\include\QtCore\qobject.h:461: ошибка: 'QObject::QObject(const QObject&)' is private
     Q_DISABLE_COPY(QObject)


Название: Re: переход на 5.5 внезапная ошибка в QGlobal.h
Отправлено: Old от Июля 12, 2016, 10:33
У kambala походу увели учетку.