Как скомпилировать dex2oat, который может работать в Ubuntu

Я скачал AOSP, но я не знаю, как скомпилировать программу оболочки Android, такую ​​как dex2oat, которую можно запустить в Ubuntu.

2 ответа

dex2oat требует подробных знаний о системе, установленной на конкретном целевом устройстве, поэтому запуск его в системе разработки, как правило, не имеет смысла.

Исключением будет запуск его как части сборки самого Android, например, из источников AOSP. В этом случае будет создана рабочая сборка инструмента, которая будет использоваться путем указания на соответствующие детали того, что будет установлено на целевом устройстве.

tl; dr dex2oat не имеет смысла без контекста устройства; Ситуация, когда запуск его на компьютере разработчика, а не на устройстве Android, потенциально полезен, уже обрабатывается системой сборки AOSP.

Инструменты, скомпилированные для Android, обычно собираются для другой архитектуры (ARM вместо x86) и часто полагаются на разные версии системных библиотек. Возможно, вам придется внести изменения в исходный код и связанные параметры сборки, чтобы перенести что-то с Android на хост-компьютер, что может оказаться долгой, но определенно не невозможной задачей.

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

Тем не менее, вы можете найти кучу инструментов Android, предварительно скомпилированных для вашего хоста, в out/host/linux-x86/bin/, включая dex2oat.

Другие вопросы по тегам