在Android应用程序上部署Qt时出错

时间:2014-04-08 18:46:08

标签: android linux qt qt5.2 qtandroidextras

我正在尝试运行我的第一个Qt Android应用程序,并且我遵循了本教程:

http://urfoex.blogspot.ro/2013/12/qt5-android-setting-up-qt-52-for-android.html

然而,在我运行它之后我得到了这个错误:

i686-linux-android-g++: error: unrecognized command line option '-marm' make: *** 
[main.o] Error 1 21:33:42: The process "make" exited with code 2.
Error while building/deploying project avd_tests (kit: Android for x86 (GCC 4.8, Qt 5.2.1)) When executing step 'Make'

我也尝试使用armeabi,但我得到了:

In file included from ../.android-ndk/sources/cxx-stl/gnu-libstdc++/4.8/include/algorithm:60:0,
                 from ../.Qt5.2.1/5.2.1/android_armv7/include/QtCore/qglobal.h:82,
                 from ../.Qt5.2.1/5.2.1/android_armv7/include/QtCore/qcoreapplication.h:45,
                 from ../.Qt5.2.1/5.2.1/android_armv7/include/QtWidgets/qapplication.h:45,
                 from ../.Qt5.2.1/5.2.1/android_armv7/include/QtWidgets/QApplication:1,
                 from ../avd_tests/qtquick2controlsapplicationviewer/qtquick2controlsapplicationviewer.h:13,
                 from ../avd_tests/main.cpp:1: ../.android-ndk/sources/cxx-stl/gnu-libstdc++/4.8/include/utility:68:28: fatal error: bits/c++config.h: No such file or directory  #include <bits/c++config.h>
                            ^ compilation terminated. make: *** [main.o] Error 1 21:44:14: The process "make" exited with code 2. Error while building/deploying project avd_tests (kit: Android for armeabi-v7a (GCC 4.8, Qt 5.2.1)) When executing step 'Make'

我正在构建的应用程序是默认的Qt Quick应用程序。我使用的是Qt 5.2.1QtCreator 3.0.1

任何人都知道它可能是什么或有没有人知道如何在QtAndroid GNU/Linux工作的良好指南?

2 个答案:

答案 0 :(得分:2)

您应该从here下载并安装Qt 5.2.1 for Android(Linux 32位或64位)。 Qt Project的SDK未附带Android SDK / NDK,因此您必须自己从here下载并安装它们。你需要Android NDK(版本r9 +)和SDK(版本22 +)。

如果您不打算创建Android Java应用程序,请确保您只下载SDK而不是ADT Bundle或Android Studio。

下载后提取它们。对于Android SDK,您应该连接到Internet并下载所需的工具。你必须安装至少Android API-13!您还必须安装Android SDK平台工具和Android SDK构建工具。

打开Qt Creator。转到Tools->Option->Android设置页面并设置Android SDK和NDK位置。

您可以找到详细的教程Here

答案 1 :(得分:2)

事实证明,这是Android SDK的新版本中的一个已知错误。

正如Qt for Android的创建者qt-opensource-linux-x64-android-5.3.0-RC_2014-04-14_00-48-35-55.run指出的那样,解决方案是:

  • 查找较旧的Android SDK。
  • 升级您的Qt创建者(使用Qt SDK 5.3)
  • 使用真实设备。

为了解决我从Bogdan Vatra下载{{1}}的问题,部署工作成功!

感谢波格丹!