Error on cross-compiling qtmultimedia
-
Hello everyone,
i'm facing the following issue when i try to cross compile qtmutimedia 6.2.4 from source related to the moc compiler:
AutoMoc subprocess error ------------------------ The moc process failed to compile "SRC:/qtmultimedia/src/plugins/videonode/imx6/qsgvivantevideonodefactory.h" into "SRC:/qt6_build/qtmultimedia/src/plugins/videonode/imx6/QSGVivanteVideoNodeFactoryPlugin_autogen/EWIEGA46WW/moc_qsgvivantevideonodefactory.cpp" Command ------- ... ... Output ------ ~/qt_from_source/qt5/qtmultimedia/src/plugins/videonode/imx6/qsgvivantevideonodefactory.h:50:1: error: Parse error at "IID"
I'm able to cross-compile the others submodules using configure script:
../configure -prefix ~/qt_from_source/qt6_inst -release -nomake examples -nomake tests -qt-host-path ~/Qt/6.2.4/gcc_64/ -submodules qtbase,qtshadertools,qtdeclarative,qt5compat,qtwayland,...
Where
~/Qt/6.2.4/gcc_64/
is my x86_64 Qt installation directory.Do you have any suggestion on how to solve this issue?
Thank you.
Edit:
The line referred to theerror: Parse error at "IID"
is:... Q_PLUGIN_METADATA(IID QSGVideoNodeFactoryInterface_iid FILE "imx6.json") ...
-
Which CMake version are you using?
I have encountered a similar case with CMake 3.22.1 for example, upgrading to 3.23.1 solved my issue.
-
Hi, I can confirm that the qtmultimedia is giving such parser error during the plugin creation.
Just as fabrdidomenico is experiencing with the imx6 target/makespecs I am having exactly the same issue - the only way to complete the build from sources is to disable the multimedia module.
Not sure if cmake can be an issue here, I would say that cmake is not responsible at all.