Absolute Zero
2018-11-29 16:17:50 UTC
Hi,
to cross compile my App (from Linux) to Windows, I installed MXE. However ,
when running the command to cross compile, I got this error:
***@lap:~/dev/Connekt2$
/home/niko/sources/mxe/usr/i686-w64-mingw32.static/qt/bin/qmake && make
Project MESSAGE: Warning: unknown QT: qml
Project MESSAGE: Warning: unknown QT: quick
Project MESSAGE: Warning: unknown QT: quickcontrols2
Project MESSAGE: Warning: unknown QT: webview
Project MESSAGE: Warning: unknown QT: qml
Project MESSAGE: Warning: unknown QT: quick
Project MESSAGE: Warning: unknown QT: quickcontrols2
Project MESSAGE: Warning: unknown QT: webview
Project MESSAGE: Warning: unknown QT: qml
Project MESSAGE: Warning: unknown QT: quick
Project MESSAGE: Warning: unknown QT: quickcontrols2
Project MESSAGE: Warning: unknown QT: webview
make -f Makefile.Release
make[1]: Entering directory '/home/niko/dev/Connekt2'
i686-w64-mingw32.static-g++ -c -pipe -fno-keep-inline-dllexport -O2 -frtti
-fexceptions -mthreads -Wall -Wextra -DUNICODE -DQT_DEPRECATED_WARNINGS
-DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB
-DQT_THREAD_SUPPORT
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/include/QtCore'
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/include/QtNetwork'
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/include/QtGui'
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/include'
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/include/ActiveQt'
-I'release'
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/mkspecs/win32-g++-4.6'
-o release/main.o main.cpp
main.cpp:1:27: fatal error: QGuiApplication: No such file or directory
compilation terminated.
Makefile.Release:270: recipe for target 'release/main.o' failed
make[1]: *** [release/main.o] Error 1
make[1]: Leaving directory '/home/niko/dev/Connekt2'
Makefile:34: recipe for target 'release' failed
make: *** [release] Error 2
Seemed to me weird that QGuiApplication is not part of the source code, so
I ran this command:
***@lap:~/sources/mxe$ find usr/i686-w64-mingw32.static/qt/include/
-iname "*appl*"
usr/i686-w64-mingw32.static/qt/include/Qt/qcoreapplication.h
usr/i686-w64-mingw32.static/qt/include/Qt/qs60mainapplication.h
usr/i686-w64-mingw32.static/qt/include/Qt/qapplication.h
usr/i686-w64-mingw32.static/qt/include/QtCore/qcoreapplication.h
usr/i686-w64-mingw32.static/qt/include/QtCore/QCoreApplication
usr/i686-w64-mingw32.static/qt/include/QtGui/QAccessibleApplication
usr/i686-w64-mingw32.static/qt/include/QtGui/qs60mainapplication.h
usr/i686-w64-mingw32.static/qt/include/QtGui/QS60MainApplicationBase
usr/i686-w64-mingw32.static/qt/include/QtGui/QS60MainApplication
usr/i686-w64-mingw32.static/qt/include/QtGui/qapplication.h
usr/i686-w64-mingw32.static/qt/include/QtGui/QApplication
***@lap:~/sources/mxe$
And found that indeed, QGuiApplication source file is not included.
So, my questions are, does MXE has the same Qt version as the Qt company (
qt.io)? If not , is it possible to update Qt sources to (for example) 5.11
version and crosscompile successfuly?
Thanks in advance
Nulik
to cross compile my App (from Linux) to Windows, I installed MXE. However ,
when running the command to cross compile, I got this error:
***@lap:~/dev/Connekt2$
/home/niko/sources/mxe/usr/i686-w64-mingw32.static/qt/bin/qmake && make
Project MESSAGE: Warning: unknown QT: qml
Project MESSAGE: Warning: unknown QT: quick
Project MESSAGE: Warning: unknown QT: quickcontrols2
Project MESSAGE: Warning: unknown QT: webview
Project MESSAGE: Warning: unknown QT: qml
Project MESSAGE: Warning: unknown QT: quick
Project MESSAGE: Warning: unknown QT: quickcontrols2
Project MESSAGE: Warning: unknown QT: webview
Project MESSAGE: Warning: unknown QT: qml
Project MESSAGE: Warning: unknown QT: quick
Project MESSAGE: Warning: unknown QT: quickcontrols2
Project MESSAGE: Warning: unknown QT: webview
make -f Makefile.Release
make[1]: Entering directory '/home/niko/dev/Connekt2'
i686-w64-mingw32.static-g++ -c -pipe -fno-keep-inline-dllexport -O2 -frtti
-fexceptions -mthreads -Wall -Wextra -DUNICODE -DQT_DEPRECATED_WARNINGS
-DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB
-DQT_THREAD_SUPPORT
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/include/QtCore'
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/include/QtNetwork'
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/include/QtGui'
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/include'
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/include/ActiveQt'
-I'release'
-I'../../sources/mxe/usr/i686-w64-mingw32.static/qt/mkspecs/win32-g++-4.6'
-o release/main.o main.cpp
main.cpp:1:27: fatal error: QGuiApplication: No such file or directory
compilation terminated.
Makefile.Release:270: recipe for target 'release/main.o' failed
make[1]: *** [release/main.o] Error 1
make[1]: Leaving directory '/home/niko/dev/Connekt2'
Makefile:34: recipe for target 'release' failed
make: *** [release] Error 2
Seemed to me weird that QGuiApplication is not part of the source code, so
I ran this command:
***@lap:~/sources/mxe$ find usr/i686-w64-mingw32.static/qt/include/
-iname "*appl*"
usr/i686-w64-mingw32.static/qt/include/Qt/qcoreapplication.h
usr/i686-w64-mingw32.static/qt/include/Qt/qs60mainapplication.h
usr/i686-w64-mingw32.static/qt/include/Qt/qapplication.h
usr/i686-w64-mingw32.static/qt/include/QtCore/qcoreapplication.h
usr/i686-w64-mingw32.static/qt/include/QtCore/QCoreApplication
usr/i686-w64-mingw32.static/qt/include/QtGui/QAccessibleApplication
usr/i686-w64-mingw32.static/qt/include/QtGui/qs60mainapplication.h
usr/i686-w64-mingw32.static/qt/include/QtGui/QS60MainApplicationBase
usr/i686-w64-mingw32.static/qt/include/QtGui/QS60MainApplication
usr/i686-w64-mingw32.static/qt/include/QtGui/qapplication.h
usr/i686-w64-mingw32.static/qt/include/QtGui/QApplication
***@lap:~/sources/mxe$
And found that indeed, QGuiApplication source file is not included.
So, my questions are, does MXE has the same Qt version as the Qt company (
qt.io)? If not , is it possible to update Qt sources to (for example) 5.11
version and crosscompile successfuly?
Thanks in advance
Nulik