Полная сборка операционной системы Android для конкретного целевого оборудования

Я попытаюсь перефразировать и обобщить эти два вопроса:

Пользовательская сборка ОС Android

https://stackoverflow.com/questions/2483631/custom-android-build- как сделать

и добавить свои два цента.

Некоторым из нас необходимо собрать Android - полную операционную систему / стек - и запустить эту сборку на реальном коммерческом оборудовании. Очевидно, что это возможно, поскольку различные производители мобильных телефонов делают это сами.

Однако инструкции, предоставленные Google ( http://source.android.com/source/initializing.html ), уведут вас так далеко, прежде чем вы поймете, что, если вы не используете один из очень немногих упомянутых аппаратных платформ (бесполезно на самой последней странице http://source.android.com/source/building.html ), вы - СОЛ. То есть, согласно Google:

«[T] проект Android с открытым исходным кодом не может использоваться только из чистого исходного кода, и для его работы требуются дополнительные проприетарные библиотеки, связанные с оборудованием, особенно для аппаратного ускорения графики»

Хорошо, хорошо (вроде). Но Google описывает, как работает этот процесс. Первый вопрос - дать рекомендации по созданию Android для реальной работы.(В самом деле, как вообще возможно, что не производитель мобильных телефонов может внести свой вклад в ОС Android , не имея возможности собрать ОС и запустить ее на оборудовании?) В частности, должны ли указанные проприетарные библиотеки быть быть каким-либо образом извлеченным из коммерческого бинарного файла и включенным в «кастомную» сборку?

Теперь GPL требует, чтобы модификации ядра, которые могли включать драйверы, были доступны для общественности и некоторых поставщиков (HTC, Acer) сделать исходный код ядра легкодоступным. Но совсем не ясно, достаточно ли этого кода для выполнения «настраиваемой» сборки. Кроме того, даже если этого кода достаточно, дерево исходных текстов от поставщика вообще не совпадает с деревом исходных текстов от Google. Поэтому не очевидно, как объединить файлы, предоставленные поставщиком устройства, с файлами от Google для сборки. Итак, второй (третий?) Вопрос: как объединить код поставщика с кодом Google, чтобы создать дерево исходных текстов, которое можно построить (а затем построить его) и запустить на произвольной аппаратной платформе?

Кто-нибудь? Кто-нибудь?

8
задан Community 23 May 2017 в 12:16
поделиться