Sept. 25, 2018, 9:10 a.m.

Настройка Qt Creator для Android

Android, Qt Creator

Добрый день!


Установил Qt Creator, Android Studio и JDK 8 в Windows 7 64 bit.

В Qt Creator все добавил (видно на скриншоте).

Только понять не могу, что сделал не так - нет компиляторов для Android.

Как можно это исправить? В Linux все становится и работает без проблем.

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
36

Добрый день!

Если честно, то Вы уже второй человек с такой же проблемой. Вот здесь таже самая проблема

Мне нужно самому проверить будет, как там проходит установка.

К сожалению, у меня сейчас не интернета дома до конца недели. Как появится, попробую повторить установку и разобраться в проблеме.

Если будут новости с положительным решением, отпишитесь, пожалуйста.


  • Sept. 25, 2018, 9:39 a.m.

Конечно отпишусь.

H

Прошу Вас помочь. У меня такая же проблема, Qt версии 5.11.2 Самая последняя, устанавливал через онлайн установщик. Пробовал ставить и более ранние. Ничего не помогает. NDK такой же версии , как у Вас на скриншоте.

Решения я не нашел. Под веник ничего не помогает, под Linux - работает без проблем.

H

У меня комплекты создались! Что я сделал: скачал android-ndk-r16b с архивного сайта и версия 16 определила все компиляторы. Но теперь проект. который у меня собирается на другой машине,

выдает  ошибку:


Android build platform: android-16

Install to device: No

-- Skipping D:/Qt/5.11.2/android_armv7/plugins/iconengines/libqsvgicon.so. It has unmet dependencies: lib/libQt5Svg.so.

-- Skipping D:/Qt/5.11.2/android_armv7/plugins/imageformats/libqsvg.so. It has unmet dependencies: lib/libQt5Svg.so.

Downloading http://services.gradle.org/distributions/gradle-1.12-all.zip


Exception in thread "main" java.lang.RuntimeException: java.net.UnknownHostException: services.gradle.org

at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:78)

at org.gradle.wrapper.Install.createDist(Install.java:47)

at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:129)

at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48)

Caused by: java.net.UnknownHostException: services.gradle.org

at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:184)

at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)

at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)

at java.net.Socket.connect(Socket.java:589)

at java.net.Socket.connect(Socket.java:538)

at sun.net.NetworkClient.doConnect(NetworkClient.java:180)

at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)

at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)

at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)

at sun.net.www.http.HttpClient.New(HttpClient.java:339)

at sun.net.www.http.HttpClient.New(HttpClient.java:357)

at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1220)

at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1156)

at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1050)

at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:984)

at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1564)

at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)

at org.gradle.wrapper.Download.downloadInternal(Download.java:59)

at org.gradle.wrapper.Download.download(Download.java:45)

at org.gradle.wrapper.Install$1.call(Install.java:60)

at org.gradle.wrapper.Install$1.call(Install.java:47)

at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65)

... 3 more

Building the android package failed!

-- For more information, run this command with --verbose.

16:56:38: Процесс «D:\Qt\5.11.2\android_armv7\bin\androiddeployqt.exe» завершился с кодом 14.

Ошибка при сборке/установке проекта AndroidClient (комплект: Android для armeabi-v7a (GCC 4.9, Qt Qt 5.11.2 for Android ARMv7))

Во время выполнения этапа «Сборка Android APK»

16:56:38: Прошло времени: 00:22.


Ссылку можно на android-ndk-r16b с архивного сайта?

Спасибо, попробую поставить отпишусь.

  • Oct. 9, 2018, 10:25 a.m.

Поставил  android-ndk-r16b - все заработало. Огромное спасибо!!!

H

У меня тоже уже все заработало. На работе проксик, через него QtCreator не качает. Зачем то ему нужно что-то устанавливать во время первой компиляции под андроид.

gradle

  • Oct. 10, 2018, 5:07 a.m.
  • (edited)

Что-то не могу понять - комплекты в порядке, все опознается, компилятор есть, Genymotion работает, только при попытке компиляции любого проекта получаю:


Не удалось обнаружить этап сборки под android.
12:05:09: Выполняются этапы для проекта untitled...
12:05:09: Запускается: «C:\Qt\5.11.1\android_x86\bin\qmake.exe» C:\Users\admin\Desktop\untitled\untitled.pro -spec android-g++ "CONFIG+=debug" "CONFIG+=qml_debug"
Info: creating stash file C:\Users\admin\Desktop\untitled\bin\Android\Debug\.qmake.stash
12:05:11: Процесс «C:\Qt\5.11.1\android_x86\bin\qmake.exe» завершился успешно.
12:05:11: Запускается: «C:\Users\admin\AppData\Local\Android\android-ndk-r16b\prebuilt\windows-x86_64\bin\make.exe» qmake_all
make: Nothing to be done for `qmake_all'.
12:05:12: Процесс «C:\Users\admin\AppData\Local\Android\android-ndk-r16b\prebuilt\windows-x86_64\bin\make.exe» завершился успешно.
12:05:12: Запускается: «C:\Users\admin\AppData\Local\Android\android-ndk-r16b\prebuilt\windows-x86_64\bin\make.exe» 
C:\Users\admin\AppData\Local\Android\android-ndk-r16b/toolchains/x86-4.9/prebuilt/windows-x86_64/bin/i686-linux-android-g++ -c -D__ANDROID_API__=16 --sysroot=C:\Users\admin\AppData\Local\Android\android-ndk-r16b/sysroot -isystem C:\Users\admin\AppData\Local\Android\android-ndk-r16b/sysroot/usr/include/i686-linux-android -isystem C:\Users\admin\AppData\Local\Android\android-ndk-r16b/sources/cxx-stl/gnu-libstdc++/4.9/include -isystem C:\Users\admin\AppData\Local\Android\android-ndk-r16b/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86/include -fstack-protector-strong -DANDROID -g -g -std=gnu++11 -Wall -W -D_REENTRANT -fPIC -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I..\..\..\..\untitled -I. -IC:\Qt\5.11.1\android_x86\include -IC:\Qt\5.11.1\android_x86\include\QtQuick -IC:\Qt\5.11.1\android_x86\include\QtGui -IC:\Qt\5.11.1\android_x86\include\QtQml -IC:\Qt\5.11.1\android_x86\include\QtNetwork -IC:\Qt\5.11.1\android_x86\include\QtCore -I. -IC:\Qt\5.11.1\android_x86\mkspecs\android-g++ -o main.obj ..\..\..\main.cpp
C:\Qt\5.11.1\android_x86\bin\rcc.exe -name qml ..\..\..\qml.qrc -o qrc_qml.cpp
C:\Users\admin\AppData\Local\Android\android-ndk-r16b/toolchains/x86-4.9/prebuilt/windows-x86_64/bin/i686-linux-android-g++ -c -D__ANDROID_API__=16 --sysroot=C:\Users\admin\AppData\Local\Android\android-ndk-r16b/sysroot -isystem C:\Users\admin\AppData\Local\Android\android-ndk-r16b/sysroot/usr/include/i686-linux-android -isystem C:\Users\admin\AppData\Local\Android\android-ndk-r16b/sources/cxx-stl/gnu-libstdc++/4.9/include -isystem C:\Users\admin\AppData\Local\Android\android-ndk-r16b/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86/include -fstack-protector-strong -DANDROID -g -g -std=gnu++11 -Wall -W -D_REENTRANT -fPIC -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I..\..\..\..\untitled -I. -IC:\Qt\5.11.1\android_x86\include -IC:\Qt\5.11.1\android_x86\include\QtQuick -IC:\Qt\5.11.1\android_x86\include\QtGui -IC:\Qt\5.11.1\android_x86\include\QtQml -IC:\Qt\5.11.1\android_x86\include\QtNetwork -IC:\Qt\5.11.1\android_x86\include\QtCore -I. -IC:\Qt\5.11.1\android_x86\mkspecs\android-g++ -o qrc_qml.obj qrc_qml.cpp
C:\Users\admin\AppData\Local\Android\android-ndk-r16b/toolchains/x86-4.9/prebuilt/windows-x86_64/bin/i686-linux-android-g++ --sysroot=C:\Users\admin\AppData\Local\Android\android-ndk-r16b/platforms/android-16/arch-x86/ -Wl,-soname,libuntitled.so -Wl,-rpath=C:/Qt/5.11.1/android_x86/lib -Wl,--no-undefined -Wl,-z,noexecstack -shared -o libuntitled.so main.obj qrc_qml.obj   -LC:\Users\admin\AppData\Local\Android\android-ndk-r16b/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86 -Lc:/users/admin/appdata/local/android/android-ndk-r16b/toolchains/x86-4.9/prebuilt/windows-x86_64/bin/../lib/gcc/i686-linux-android/4.9.x -LC:/Qt/5.11.1/android_x86/lib -lQt5Quick -Lc:\utils\android-ndk-r10e/sources/cxx-stl/gnu-libstdc++/4.9/libs/x86 -Lc:/utils/android-ndk-r10e/toolchains/x86-4.9/prebuilt/windows/bin/../lib/gcc/i686-linux-android/4.9 -LC:\Qt\5.11.1\android_x86/lib -lQt5Gui -lQt5Qml -lQt5Network -lQt5Core -lGLESv2 -lgnustl_shared -lgcc -llog -lz -lm -ldl -lc
12:05:16: Процесс «C:\Users\admin\AppData\Local\Android\android-ndk-r16b\prebuilt\windows-x86_64\bin\make.exe» завершился успешно.
Не удалось обнаружить имя пакета.
12:05:16: Загрузка файлов, необходимых для отладки.
12:05:16: Установка пакета: Выполнение команды «C:/Users/admin/AppData/Local/Android/Sdk/platform-tools/adb.exe -s 169.254.241.101:5555 pull /system/bin/app_process C:/Users/admin/Desktop/untitled/bin/Android/Debug/app_process».
12:05:16: Установка пакета: Выполнение команды «C:/Users/admin/AppData/Local/Android/Sdk/platform-tools/adb.exe -s 169.254.241.101:5555 pull /system/bin/app_process32 C:/Users/admin/Desktop/untitled/bin/Android/Debug/app_process».
12:05:16: Установка пакета: Выполнение команды «C:/Users/admin/AppData/Local/Android/Sdk/platform-tools/adb.exe -s 169.254.241.101:5555 pull /system/bin/linker C:/Users/admin/Desktop/untitled/bin/Android/Debug/linker».
12:05:16: Установка пакета: Выполнение команды «C:/Users/admin/AppData/Local/Android/Sdk/platform-tools/adb.exe -s 169.254.241.101:5555 pull /system/lib/libc.so C:/Users/admin/Desktop/untitled/bin/Android/Debug/libc.so».
Ошибка при сборке/установке проекта untitled (комплект: Android для x86 (GCC 4.9, Qt Qt 5.11.1 for Android x86))
Во время выполнения этапа «Установка на устройство Android»
12:05:17: Прошло времени: 00:07.


Это даже при сборке проекта по умолчанию:


import QtQuick 2.11
import QtQuick.Window 2.11

Window {
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")
}


Что ему может не нравится?



А Genymotion вообще у вас с Qt хоть раз заводился?

Я что-то колупал его, но получалось только с Android Studio заставить его работать. Поэтому у меня такое подозрение, что для разработки на NDK он не подходит.

Поэтому только на живом девайсе обычно тестировал.

  • Oct. 10, 2018, 5:42 a.m.

Конечно и очень даже хорошо. На Debian Linux с Qt работает прекрасно и на старой Windows 7 тоже работал (не так давно пришлось переставить - жила 3 года).

Наверное с последних моих попыток запуска они допилили поддержку NDK, это приятно слышать.

  • Oct. 10, 2018, 5:46 a.m.
  • (edited)

Я Genymotion  ставил с VBox в комплекте для личного использования, после добавил из списка телефон с нужным API. Запустил его и при компиляции Qt Creator сам нашел его и все запустилось.

Теперь почему-то даже компилировать не хочет (на Windows).

Здравствуйте. У меня установлены SDK, NDK. Но для компилятора не хватает arm-linux-android-elf-64bit, 86-linux-android-elf-64bit .

Скажите пожалуйста как это исправить?

Через maintenance tool всё установили у Qt?

Не знаю. У меня интерфейс русский. Скажите пожалуйста что такое  maintenance tool ?



Утилита для установки компонентов Qt, находится в каталоге, куда устанавливали сам Qt. MaintenanceTool.exe

Запускаете, выбираете добавить компоненты и устанавливаете то, что требуется для работы с Android.

Видимо все установлено. Может это в SDK должно быть?

Это не то, покажите, пожалуйста ту часть, где Qt 5.11 или какая там у вас версия.

И используйте пожалуйста иконку загрузки изображений в редакторе комментариев. Тогда изображение будет вставляться сразу в комментарий ))

Вот этот скрин нужен?

Раскройте Qt 5.11.0 пункт

все галочки включены.

Говорят, что это может быть из за поздней версии SDK, говорят ранние версии лучше. Вы не знаете, где можно скачать SDK ANdroid 25  и более ранний?

Вот в этом ответе есть ссылка на страницу, где можно скачать более ранние версии SDK и NDK

  • Oct. 21, 2018, 12:08 p.m.

Качну и я под форточку старый СДК, а вдруг поможет.

Но ведь по этой ссылке https://developer.android.com/ndk/downloads/older_releases только NDK, а нужен старый SDK.


  • Oct. 22, 2018, 6:01 a.m.

Старый СДК вот .

Только не мучайтесь, все равно не сработало, ставил СДК 24.

  • Oct. 22, 2018, 6:03 a.m.

Подскажите как проект на Qt собрать и запустить с Android Studio.

Оу, перепутал слегка. Вообще, все SDK должны ставиться через SDK Manager. Он есть в Android Studio например, и при установке SDK должен также ставиться, если не ошибаюсь.

В смысле? Запустить проект Qt под Android Studio? как самостоятельный проект вряд ли. Android Studio же для Java, максимум как дополнительную библиотеку, но там свои танцы с бубнами, которые я не танцевал. Даже не знаю, к счастью ли или нет...

  • Oct. 22, 2018, 6:15 a.m.

Понятно. Это была мысль на случай вдруг возможно как-то это осуществить.

Это от того, что ничего из испробованного мною не работает. Я уже даже и не знаю как можно заставить Qt Creator скомпилировать проект под Android.

Это больше похоже на баг, с пол года назад не собиралось под линуксом, тоже что-то из похожего разряда было, не виделись SDK.

Потом исправили, бред конечно, ждать пока соизволят. Но как-то других мыслей пока нет. Либо работать из под линукса, если вам это не мешает.

  • Oct. 22, 2018, 6:29 a.m.

Да оно то не особо и мешает. Писать программы и смотреть как будет выглядеть и работать можно по большей части скомпилировав под Desktop в Win7, а в Linux уже собирать для Android.

Есть мысль еще попробовать с clang для android, может заведется.

  • Oct. 22, 2018, 7:50 a.m.

Похоже осталось только ждать пока исправят баг.

Comments

Only authorized users can post comments.
Please, Log in or Sign up
How to become an author?

Contribute to the evolution of the EVILEG community.

Learn how to become a site author.

Learn it
Donate

Good day, Dear Users!!!

I am Evgenii Legotckoi, developer of EVILEG. And it is my hobby project, which helps to learn programming another programmers and developers

If the site helped you, and you want also support the development of the site, than you can donate by following ways

PayPalYandex.Money
Timeweb

Let me recommend you the excellent hosting on which EVILEG is located.

For many years, Timeweb has been proving his stability.

For projects on Django I recommend VDS hosting

View Hosting Timeweb
June 6, 2020, 12:20 a.m.
Aleksej

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:60points,
  • Rating points-1
June 6, 2020, 12:15 a.m.
Aleksej

C++ - Test 001. The first program and data types

  • Result:53points,
  • Rating points-4
V
June 5, 2020, 5:47 p.m.
Vladzo

C++ - Test 005. Structures and Classes

  • Result:83points,
  • Rating points4
Last comments
June 5, 2020, 11:52 a.m.
progammist

Распознавание изображений на Python с помощью TensorFlow и Keras

Огромное спасибо за метериал, по-больше бы подобных статей (с подробным описанием работы и примерами применения) на тему современных технологий. Вопрос поразмышлять. На текущий момент реал…
June 5, 2020, 2:39 a.m.
Evgenij Legotskoj

Qt/C++ - Tutorial 091. How to write a custom delegate controlling the highlighting of a row in a table

По-моему, смысла в этом нет особого. Если делегат будет игнорировать настройки таблицы, то это приведёт ещё к большему непониманию, что вообще происходит, для программиста, который после вас буд…
June 5, 2020, 2:34 a.m.
IscanderChe

Qt/C++ - Tutorial 091. How to write a custom delegate controlling the highlighting of a row in a table

Сижу, размышляю: можно ли переписать делегата так, чтобы независимо от настроек строк выделялись строки?
June 5, 2020, 2:31 a.m.
Evgenij Legotskoj

Qt/C++ - Tutorial 091. How to write a custom delegate controlling the highlighting of a row in a table

Понятно. Я не обратил внимания на то, что там было в старом коде по настройкам строк :)
Now discuss on the forum
s
June 6, 2020, 2:54 a.m.
shuric

Qt/C++ Определение положения курсора над действие(кнопкой) в QToolBar

Доброго дня. Возник вопрос - как можно определить что курсор находится над определенным действием(кнопкой) в qtoolbar ? mainwindow.cpp MainWindow::MainWi…
s
June 6, 2020, 1:45 a.m.
shuric

Qt/C++ особенности QProxyStyle

Да, Вы правы. Код был скопирован с сайта (уже не помню с какого), но решил пойти по пути более легком. Пришлось переписать - кому интересно: использовал stackedWidget для пе…
June 6, 2020, 12:08 a.m.
Aleksej

Посоветуйте новичку (базы данных и Qt, что учить)

Блин, а я недавно купил Шлее Qt 5.10 :( С детства хотел стать программистом, баловался Паскалем, писал простенькие программки на Delphi, создавал движок на php, изучал C (забросил и перешел на п…
June 5, 2020, 2:09 p.m.
IscanderChe

QPlainTextEdit настройка цвета фона

Вечер добрый. Пытаюсь настроить цвет фона QPlainTextEdit следующим образом: CodeEditor::CodeEditor(QWidget *parent) : QPlainTextEdit(parent){ ... QPalette::ColorRole role = bac…
June 5, 2020, 7:13 a.m.
IscanderChe

Фильтр для QtableView sql

Добрый день. Для такой фильтрации необходимо использовать QSortFilterProxyModel. В оффдоках есть хороший пример.
About
Services
© EVILEG 2015-2020
Recommend hosting TIMEWEB