207 похожих чатов

Всем привет. У меня есть сборка под arm64 Linux на

базе gcc. Если я хочу собрать под android (тоже arm64), то мне нужно все пересобирать именно их компилятором? Или как?

В бинаре все линкуется статически в один so (кроме libc). Сейчас проблема с тем, что основное приложение android при сборке не может найти ld-linux-aarch64.so (пишу по памяти, могу ошибаться с конкретным названием).

8 ответов

11 просмотров

Поправьте меня, если ошибаюсь - но под андроидом есть даа способа запустить что-то плюсовое - при сборке с NDK (фронтенд все равно - Ява или Котлин) , и как обычное приложение например в Termux. Какой именно вариант у Вас?

Alex- Автор вопроса
Nikita Kulikov
Поправьте меня, если ошибаюсь - но под андроидом е...

Будет фронтенд в виде Java. Я предоставляю extern C API, которое будет оттуда вызываться

Пересобирайте android'овским NDK, используйте поддержку cmake из android gradle plugin

Alex- Автор вопроса

этого хотелось избежать. Но спасибо. Если другого выхода нет, то будет так

Alex
этого хотелось избежать. Но спасибо. Если другого ...

Другие выходы есть, но, кажется, они разнятся от "ужасных" до "преступных". Возможно, я слишком стар (или, напротив, слишком неопытен), но я прям очень хочу, чтобы сборка собиралась одной кнопкой и при этом чтобы инструментарий типа отладчиков работал. Интеграция cmake в agp не так уж и ужасна, зато сразу разложит артефакты по нужным директориям, соберёт под все нужные abi, отладочные символы поstripает, в общем, пользы от неё, кажется, больше, чем боли

Alex- Автор вопроса
Alexey
Другие выходы есть, но, кажется, они разнятся от "...

Только уже есть 2 стадии сборки и без андроида (под чистый линукс). Он был бы третьей стадией(

Вменяемый метод только через NDK 🤷‍♂ Используйте тулчейн из набора NDK Через Gradle как уже заметили вся сборка под разные архитектуры будет идти автоматически

Ошибка выше говорит о том, что сборка идёт под чистый linux, это не вариант для android

Похожие вопросы

Обсуждают сегодня

А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Вопрос я правильно понимаю что в коде newtype ArrowMap k v = ArrowMap { getArrowMap :: k -> Maybe v } getArrowMap есть функция типа k -> Maybe v, если да, то не понимаю задач...
Fedor
64
Как Вы считаете нормально ли в двадцатых годах 21 века в ВУЗах Российской Федерации обучать студентов работе с TASM? Не слишком ли это "архаично"? (Если оффтоп или флейм для э...
Spiker01
52
Кто-нибудь знает, как считается нагрузка на цпу? И что такое вообще "нагрузка на цпу"? вот, например, есть у цпу какой-то clock, настроенный на 3 ГГц --- Что значит "нагрузка...
Toideng
15
Можно ли написать свою библиотеку "socket" на каком либо языке ассемблера с нуля не используя сишние библиотеки ? Или это самоубийство ?
123🪐
15
Продолжая диалог про свифт в проде – сейчас возник вопрос в активном наборе бекендеров. В основном в нашей компании мы фанаты Java Spring и полностью ей довольны. Однако найм ...
Guseyn
27
Комрады, хотел уточнить. Проперть в OnDestroy юнита-хозяина по-прежнему доступна? И еще уточнение: finalization юнита наступает раньше или позже OnDestroy?
Ed Doc
48
{!! $modx->runSnippet( 'multiTV',[ 'tvName'=>'slider-main1', 'docid'=>'[*id*]', 'tplConfig'=>'', 'display'=>'4', 'offset'=>'0', 'rows'=>'all', 'ra...
Роман С
4
PopOs or Linux Mint for a noob starter? Also do you have any articles on how to safely dual boot Windows 10 alongside it? I've heard there are a bunch problems that can occur...
Senator
14
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Карта сайта