android - 在Windows for Android上从源代码构建Qt5.13.2时出错

标签 android c++ qt build static

尝试从 Android 的源代码构建 Qt 5.13.2 时遇到问题。
我已在Windows 10上使用 PowerShell
在配置命令之前,我已经设置了 JDK_ROOT 路径:

set "JDK_ROOT=C:\Program Files\Java\jdk1.8.0_241\bin
此配置命令已成功执行:
..\src\qt5\configure -prefix E:\Qt\Static\Qt5.13.2Android -platform win32-g++ -opengl es2 -xplatform android-clang -android-sdk C:\Users\user\AppData\Local\Android\Sdk -android-ndk C:\Users\user\AppData\Local\Android\Sdk\ndk\21.3.6528147 -nomake tests -nomake examples -opensource -confirm-license
之后,我执行:
mingw32-make -j4
并且在开始之后不久,构建在最后停止,并显示以下输出:
del ..\..\..\lib\libQt5Bootstrap.a 2>NUL
ar -rc ..\..\..\lib\libQt5Bootstrap.a @object_script.libQt5Bootstrap.Release
mingw32-make[4]: Leaving directory 'E:/Qt/Static/build-android/qtbase/src/tools/bootstrap'
mingw32-make[3]: Leaving directory 'E:/Qt/Static/build-android/qtbase/src/tools/bootstrap'
mingw32-make[2]: Leaving directory 'E:/Qt/Static/build-android/qtbase/src'
mingw32-make[1]: *** [Makefile:51: sub-src-make_first] Error 2
mingw32-make[1]: Leaving directory 'E:/Qt/Static/build-android/qtbase'
mingw32-make: *** [Makefile:87: module-qtbase-make_first] Error 2
任何建议或想法为什么停止构建?提前致谢。
更新:与Qt 5.14.2和Qt 5.12.5相同

最佳答案

makedocumentation表示-j选项告诉它将工作分解为多个并行运行的“作业”。这很有用,因为它以这种方式完成得更快。但是,随着每个作业写入同一控制台,输出变得更加困惑,您无法轻易分辨出哪个输出来自哪个作业。因此,当您遇到编译错误时,通常很难找到错误消息的真正含义。因此,当我遇到错误时,通常会删除-j选项,以便输出保持顺序,并且我可以实际读取它。
注意:您在注释中写道,只需删除此选项即可使qt成功编译,因此这就是我将其作为答案编写的原因。但是我真的不知道为什么会有帮助。也许有些东西被多个作业弄乱了。无论如何,我很高兴这个答案对您有所帮助。

关于android - 在Windows for Android上从源代码构建Qt5.13.2时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63891717/

相关文章:

c++ - 什么时候在堆中的对象上调用 C++ 析构函数?

c++ - 如何确定表示 QObject* 的 QVariant 是否为空

c# - 使用 Xamarin 的简单 2D 游戏

安卓没有生命周期?

c++ - 通过用于排序 std::set 的显式构造函数自定义比较器

c++ - C++ 中的回溯

android - 什么是 flutter.minSdkVersion?

android - 未知错误(代码 14): Could not open database

c++ - 私有(private)插槽 Qt 上的声明不一致

c++ - QJsonObject如何创建函数