Russian Qt Forum

Qt => Qt Embedded => Тема начата: Гурман от Ноябрь 20, 2018, 16:32



Название: Когда создаётся каталог android-build и заполняется содержимым?
Отправлено: Гурман от Ноябрь 20, 2018, 16:32
Переделываю свои Android приложения с ant на gradle (ant в новых QtCreator больше не поддерживается). В июле подробно разбирался, одно приложение тогда успешно переделал. Но тогда обнаружил ошибку в гугловских библиотеках, из-за чего отложил переделку остальных. Ошибку гуглы недавно исправили, я решил продолжить. И упёрся в непонятку - проекты все аналогичные, точнее даже собираются из одних и тех же включаемых .pri фрагментов. Но первый проект собирается, остальные нет - в результирующем каталоге build-тратата-Release отсутствует каталог android-build, соответственно нет готовых для сборки библиотечных файлов в android-build/libs. Там должны быть и мои  .so файлы, и системные, необходимые для работы Android приложения. В первом проекте, который собирается c помощью gradle, который я делал летом, это всё есть. И его содержимое заменяется при пересборке - то есть, всё правильно работает. Также у старых проектов, которые раньше собирались ant, разумеется эти каталоги тоже есть. Но если в них запустить сборку gradle, они в начале сборки удаляются и не создаются. Сломал уже глаза в поисках отсутствующего шага в новых проектах.

Может кто-нибудь помочь разобраться, какой этап я пропускаю, или где отсутствует настройка в проекте? Я записывал шаги когда первый раз делал, но похоже что-то пропустил. Есть тут кто-то, хорошо понимающий сборку с gradle?


Название: Re: Когда создаётся каталог android-build и заполняется содержимым?
Отправлено: Гурман от Ноябрь 20, 2018, 21:30
Нашёл свой косяк. Точнее два. Неправильно формировалась переменная ANDROID_EXTRA_LIBS в проекте. Предыдущие приложения собирались в Qt 5.6.1, а теперь в 5.9.6. А у них разные маршруты для build. В результате выходные .so улетали не туда, куда надо, в тестовое приложение. Причём летом я сделал другую ошибку - настроил проект на каталоги этого приложения. В результате всё собиралось правильно, но когда я наткнулся на дырку в Android, очевидно забыл переделать - целиком занялся обходом этой дырки. Вот что бывает, когда работаешь последнюю пару недель перед отпуском...