LINUX.ORG.RU

Сборка отладка С++ под Андроид возможна?

 , ,


0

1

Давно мучает вопрос почему (по моим данным) никто не отлаживает свои проекты прямо по андроид ОС.

Прошли те времена, когда смартфоны на ARM были слабыми.

Но по-прежнему Андроид Студия, кросскомпиляция, эмуляторы, удаленные отладчики…

Неужели это никому не надоело?

Может знает кто какие IDE для сборки С++ исходников прямо под Андроид?


Ответ на: комментарий от kkmspb

да ничего там сложного нет.

termux, (какая-нибудь убунта через proot опционально), code-server и вот оно

а вообще начиная с какой-то свежей версии (номер не помню, вспоминать и гуглить лень) гугло стал сесурити озабоченным как никогда прежде и походу вся эта тема с сексуальной эксплуатацией своих петпроектов прямо не снимая лыж на девайсе может накрыться медным тазом. а может и нет, но жить стало веселее.

если хочется погрузиться в тему хоррор гуглится по android execve() и W^X

olelookoe ★★★
()
Ответ на: комментарий от olelookoe

Я тут подумал, что мой вопрос можно упрощённо сформулировать и по другому. Ведь все собирается в общем-то из командной строки. IDE это же просто красивая надстройка. Соответственно для андроид нам нужен компилятор для соответствующей Arm платформы, который запускается под этой же платформой. Правильно? А такой вообще есть?

kkmspb
() автор топика
Ответ на: комментарий от kkmspb

А такой вообще есть?

да.

сначала ставится termux (обычное андроид приложение, ставить нужно из f-droid, а не из гугл-плей) потом компилятор-отладчик-и все все все.

и да, все это хозяйство будет собрано для соотв платформы. и для этого ничего специального делать не нужно, достаточно просто установить.

программировать на экранчике смартфона - ну, такое себе. поэтому ssh и vim если ты прям гуру командной строки. а если нет - тогда vscode.

olelookoe ★★★
()

ты же не будешь собирать и тестировать приложение только под одну версию ведроида. 11, 12, 13, еще и новые регулярно появляются. Так что от кросс-компиляции и удаленной отладки никуда не деться.

Но хорошие новости в том, что это все отлажено и работает, в общем не вижу никаких проблем.

Lrrr ★★★★★
()

Если там ядер прибавилось и герц, то это не значит, что производительность приблизилась к x86.

Не просто так они (смартфоны) сутки от маленькой батареи живут.

rumgot ★★★★★
()

Потому что для такой работы нужен полноценный комп. Причём желательно даже именно стационарный (а не ноут) с 20"+ экраном. Пытаться что-то кодить на недоустройствах типа телефона, без монитора, без клавиатуры, без мышки, и без удобного расположения всего вышеперечисленного на рабочем месте - чистый мазохизм, которому нет никакого обоснования. Проблемы мощности проца и всякие проблемы програмного характера (в целом убогое и то и то на телефонах) - уже только во вторую очередь проявляются.

firkax ★★★★★
()
Ответ на: комментарий от Lrrr

Я надеюсь, что ситуация будет как под Виндоус: статически собираем приложение из исходников (С++) например msvc-2010 (x86) и оно работает и на 10 и на 7 и на XP и т.д.

kkmspb
() автор топика
Ответ на: комментарий от olelookoe

Них не гуглится, тут надо консорциум собирать чтобы выяснить, что ты имеешь в виду. У тебя мышление состоит из смехучек и ключевых слов? А слабо суть в двух словах раскрыть вместо своих фрейдистских фантазий? Аж трисет.

kolpakchi
()
Ответ на: комментарий от kkmspb

Aide крякнутым пользуюсь уже год наверное. Но натив там идёт как дополнение, не смог скачать подходящий, у других работает вроде. Еще он на андроид 12 не собирает у меня, для кодинга у меня отдельный смартфон старый. И на 12 андроид нужны какие-то отдельные сертификаты для собираемого приложения, которые можно поставить как патч через утилиты типа apk tool m. Я просто все делаю на старом телефоне, изредка делая перенос на новый готового приложения. Отладка может и есть в новых версиях, я забил на такие сложные вещи давно. Проще тесты написать и логи посмотреть.

Apk builder можно использовать на 4 Андроиде, проект заброшен давно.

В termux можно компилировать через ecj. Вышеназванные ide тоже собираются через внутренние скрипты, которые можно посмотреть у apk builder в настройках и наверное даже поменять, но я не шарю в скриптах под голый Андроид. В принципе рабочий вариант компилировать классы через ecj, упаковывать в zip и подписывать отдельно через утилиты. Скрипта на подпись не видел просто в открытом доступе.

4pda полон информации на эту тему. И их не нужно колоть как партизанов, как здешних, чтобы получить инфу.

kolpakchi
()
Ответ на: комментарий от firkax

Хотел добавить,что на смартфоне и не думал кодить. Я уже более 13 лет сижу на дисплее NEC Multisync P221w с SPVA матрицей. Ноутбуки имеют толстую межпиксельную решетку и сами производители ноутбуков рекомендуют использовать их 30мин./день (нас самом деле для этого есть основания), но пока ты молодой…

kkmspb
() автор топика
Ответ на: комментарий от olelookoe

программировать на экранчике смартфона - ну, такое себе

Во-первых, есть планшеты. Во-вторых, к телефону отлично подключается клавиатура и мышь по USB OTG или Bluetooth, в-третьих, к хорошим смартфонам можно даже монитор через Type C подключить. И получается десктоп средней мощности (ОЗУ, например, у некоторых смартфонов уже больше, чем в ПК многих лоровцев). Но всё упирается в софт. Сам Android даже многооконность уже умеет.

KivApple ★★★★★
()
Последнее исправление: KivApple (всего исправлений: 2)
Ответ на: комментарий от KivApple

все так. и во-первых и во-вторых. в третьих - это про самсунг, хуайвей и то не про всякие и про что-то еще (список не так чтобы очень длинный).

про софт не понялЪ, что там куда упирается?

еще раз. termux, proot и далее дистрибутив на выбор. убунту, например. в этих дистрибутивах ставим все то, к чему привыкли за долгие годы на десктопе и оно даже работает, самым обыкновенным образом. на маленьком экранчике (экранчик планшета тоже маловат) этим удобно разве что любоваться. поэтому или пункт 3, если повезло и на устройстве реализован display port alternate mode, или ssh, если консоли хватает, или какая-то разновидность vnc. ну или code-server, которого хватает приблизительно для всего, в смысле разработки, с вопроса о которой и начал ТС.

olelookoe ★★★
()

Но по-прежнему Андроид Студия, кросскомпиляция, эмуляторы, удаленные отладчики…

Запускать можно и на физическом устройстве, тем более, что на нем есть куча инструментов разработчика. С последних версий отладка возможна даже по вайфаю, эмуляторы отлично помогают при тестировании приложения на других версиях андроида (что очень желательно, т.к. зачастую наблюдается кардинальное различие поведения системы в тех же механизмах выдачи разрешений, доступа к файлам, запуска сервисов)

Неужели это никому не надоело?

А что должно надоесть? Достойной альтернативы андроид студии еще долго не будет.

man-from-36
()
Последнее исправление: man-from-36 (всего исправлений: 1)