Hi,

to expand on what Alexey said: Without linking against Qt::Gui, you will not have qpa in your include paths, which in turn means that QPlatformIntegrationFactoryInterface_iid won't be macro-expanded to the string literals that is defined in qplatformintegrationplugin.h. In turn, moc will complain because it is expecting a string literal after IID.

Regards,
Fabian

On 15.11.22 10:28, Alexey Edelev via Development wrote:
Hi,

Please try to add
LIBRARIES
Qt::Gui

to the qt_internal_add_plugin call in https://github.com/psmedley/qt6-os2/blob/main/src/plugins/platforms/os2/CMakeLists.txt <https://github.com/psmedley/qt6-os2/blob/main/src/plugins/platforms/os2/CMakeLists.txt>

Regards,
Alexey.

------------------------------------------------------------------------
*From:* Development <development-boun...@qt-project.org> on behalf of Paul Smedley <p...@smedley.id.au>
*Sent:* Tuesday, November 15, 2022 10:01 AM
*To:* development@qt-project.org <development@qt-project.org>
*Subject:* [Development] Problems porting Qt5.15 to Qt 6.2 for OS/2
Hi All,

I'm attempting to update the OS/2 port of Qt 5.15
(https://github.com/bitwiseworks/qtbase-os2 <https://github.com/bitwiseworks/qtbase-os2>) to Qt 6.2.4
(https://github.com/psmedley/qt6-os2 <https://github.com/psmedley/qt6-os2>)

Things are going pretty well and I have a number of DLLs built, howeever
I'm now stuck on building the OS/2 plugin.

I'm getting the following:

AutoMoc subprocess error
------------------------
The moc process failed to compile
    "SRC:/src/plugins/platforms/os2/main.cpp"
into

"SRC:/build/src/plugins/platforms/os2/QOS2IntegrationPlugin_autogen/include/main.moc"
included by
    "SRC:/src/plugins/platforms/os2/main.cpp"

Command
-------
U:/DEV/qtbase-everywhere-src-6.2.4/build/bin/moc.exe
-DQOS2IntegrationPlugin_EXPORTS -DQT_DEPRECATED_WARNINGS
-DQT_DEPRECATED_WARNINGS_SINCE=0x060000
-DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS
-DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT
-DQT_PLUGIN
-IU:/DEV/qtbase-everywhere-src-6.2.4/src/plugins/platforms/os2
-IU:/DEV/qtbase-everywhere-src-6.2.4/build/src/plugins/platforms/os2
-IU:/DEV/qtbase-everywhere-src-6.2.4/build/include
-IU:/DEV/qtbase-everywhere-src-6.2.4/mkspecs/os2-g++ -Iu:/extras/include
-Iu:/openldap/include -Iu:/usr/include -IU:/OS2TK45/H
-IU:/usr/local1220/include/c++/12.2.0
-IU:/usr/local1220/include/c++/12.2.0/i686-pc-os2-emx
-IU:/usr/local1220/include/c++/12.2.0/backward
-IU:/usr/local1220/lib/gcc/i686-pc-os2-emx/12.2.0/include
-IU:/usr/local1220/lib/gcc/i686-pc-os2-emx/12.2.0/include-fixed
-I/usr/local/include -IU:/usr/local1220/include --include
U:/DEV/qtbase-everywhere-src-6.2.4/build/src/plugins/platforms/os2/QOS2IntegrationPlugin_autogen/moc_predefs.h
-o
U:/DEV/qtbase-everywhere-src-6.2.4/build/src/plugins/platforms/os2/QOS2IntegrationPlugin_autogen/include/main.moc
U:/DEV/qtbase-everywhere-src-6.2.4/src/plugins/platforms/os2/main.cpp

Output
------
U:/DEV/qtbase-everywhere-src-6.2.4/src/plugins/platforms/os2/main.cpp:49:1:
error: Parse error at "IID"

Line 49 of main.cpp contains:
Q_PLUGIN_METADATA(IID QPlatformIntegrationFactoryInterface_iid FILE
"os2.json")

Any clues on how to resolve the parse error?

Cheers,

Paul

_______________________________________________
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development <https://lists.qt-project.org/listinfo/development>

_______________________________________________
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development

--
Fabian Kosmale
Manager R&D

The Qt Company GmbH
Erich-Thilo-Str. 10
D-12489 Berlin
fabian.kosm...@qt.io
+49 1638686070
_______________________________________________
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development

Reply via email to