2014-04-08 79 views
3

我試圖運行我的第一Qt Android應用程序,我跟着這個教程中部署的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

事實證明這是在較新版本的Android SDK中的一個已知的錯誤。

正如指出的Bogdan VatraQt for Android創建者,該解決方案是:

  • 找到一個較舊的Android SDK。
  • 升級你的Qt創建器(使用Qt SDK 5.3)
  • 使用真實的設備。

爲了解決我從http://download.qt-project.org/snapshots/qt/5.3/5.3.0-RC/2014-04-14_55/下載qt-opensource-linux-x64-android-5.3.0-RC_2014-04-14_00-48-35-55.run和部署成功合作的問題!

謝謝波格丹!

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創建者。轉到Tools->Option->Android設置頁面並設置Android SDK和NDK位置。

你可以找到詳細的教程Here

+0

非常感謝你的答案。我將在幾個小時內嘗試你的榜樣,因爲我現在在工作。我使用Qt 5.2.1 linux 64在線安裝程序並從那裏安裝了Android。我手動下載了ndk和sdk,並從tools-> option-> android手動設置路徑,但是您可以看到上面的結果。我會嘗試你的方式,但我會讓你知道結果。 –

+0

我試過了,但我得到了以下錯誤: 而建設後,我得到: 12:40:26:運行項目untitled2步驟... 12:40:26:配置不變,跳過qmake步驟。 12:40:26:開始:「make」 make:「第一個」沒有做任何事情。 12:40:26:進程「make」正常退出。 12:40:26:刪除目錄/ home/user/build-untitled2-Android_for_armeabi_v7a_GCC_4_8_Qt_5_2_1-Debug/android-build 12:40:26:Starting:「make」INSTALL_ROOT =/home/user/build-untitled2-Android_for_armeabi_v7a_GCC_4_8_Qt_5_2_1- Debug/android-build install –

+0

cp -f -R/home/user/untitled2/qml/untitled2/home/user/build-untitled2 -Android_for_armeabi_v7a_GCC_4_8_Qt_5_2_1-Debug/android-build/assets/qml/ install -m 755 -p 「libuntitled2.so」「/home/user/build-untitled2-Android_for_armeabi_v7a_GCC_4_8_Qt_5_2_1-Debug/android-build/libs/armeabi-v7a/libuntitled2.so」 12:40:26:進程「make」正常退出。 構建/部署項目untitled2時出錯(套件:Android for armeabi-v7a(GCC 4.8,Qt 5.2.1)) 執行步驟'Deploy to Android device' 12:42:40:已用時間:02:14。 –