Я пытаюсь создать собственное ПЗУ для echilada, то есть Oneplus 6. Я ссылаюсь на PixelExperience для запуска процесса разработки. Вот прогресс:
Инициализировать локальный репозиторий
repo init -u https://github.com/PixelExperience/manifest -b pie
- Это успешно инициализировано.
Синхронизация
repo sync -c -jx --force-sync --no-clone-bundle --no-tags
- Я получил сообщение об ошибке: «Не удалось получить хранилище», которое было решено добавлением флага «-f».
Настройка среды
$. строить / envsetup.sh
Выберите цель
$ lunch aosp_echilada-userdebug
При запуске отсутствовали двоичные файлы устройства, и это выдает ошибку, но также начинается загрузка этих двоичных файлов.
Вот журналы:
build/make/core/product_config.mk:234: error: Can not locate config makefile for product "aosp_enchilada".
10:16:17 dumpvars failed with: exit status 1
Device enchilada not found. Attempting to retrieve device repository from PixelExperience-Devices Github (http://github.com/PixelExperience-Devices).
Found repository: device_oneplus_enchilada
Checking branch info
Calculated revision: pie
Adding dependency:
Repository: device_oneplus_enchilada
Branch: pie
Remote: pixel-devices
Path: device/oneplus/enchilada
Syncing repository to retrieve project.
remote: Enumerating objects: 45, done.
remote: Counting objects: 100% (45/45), done.
remote: Compressing objects: 100% (19/19), done.
remote: Total 37 (delta 21), reused 34 (delta 18), pack-reused 0
From https://github.com/PixelExperience/manifest
101e29e..5fe596f pie -> origin/pie
project .repo/manifests/
Updating 101e29e..5fe596f
Fast-forward
default.xml | 3 +--
snippets/lineage.xml | 10 ++++++++++
snippets/pixel.xml | 6 ------
snippets/remove.xml | 11 +++--------
4 files changed, 14 insertions(+), 16 deletions(-)
Fetching project device_oneplus_enchilada
remote: Enumerating objects: 325, done.
remote: Counting objects: 100% (325/325), done.
remote: Compressing objects: 100% (67/67), done.
remote: Total 325 (delta 126), reused 320 (delta 121), pack-reused 0
Receiving objects: 100% (325/325), 33.22 KiB | 145.00 KiB/s, done.
Resolving deltas: 100% (126/126), done.
From https://github.com/PixelExperience-Devices/device_oneplus_enchilada
* [new branch] pie -> pixel-devices/pie
Fetching projects: 100% (1/1), done.
Deleting obsolete path /home/meritech/Work/pixel_experience/external/opencv
Repository synced!
Looking for dependencies
Adding dependencies to manifest
Adding dependency:
Repository: device_oneplus_sdm845-common
Branch: pie
Remote: pixel-devices
Path: device/oneplus/sdm845-common
Syncing dependencies
Fetching project device_oneplus_sdm845-common
remote: Enumerating objects: 1200, done.
remote: Total 1200 (delta 0), reused 0 (delta 0), pack-reused 1200
Receiving objects: 100% (1200/1200), 146.63 MiB | 1.15 MiB/s, done.
Resolving deltas: 100% (467/467), done.
From https://github.com/PixelExperience-Devices/device_oneplus_sdm845-common
* [new branch] pie -> pixel-devices/pie
Fetching projects: 100% (1/1), done.
Looking for dependencies
Adding dependencies to manifest
Adding dependency:
Repository: packages_resources_OppoGestures
Branch: pie
Remote: pixel
Path: packages/resources/OppoGestures
Adding dependency:
Repository: luca020400/proprietary_vendor_oneplus
Branch: lineage-16.0-luk
Remote: github
Path: vendor/oneplus
Adding dependency:
Repository: LineageOS/android_kernel_oneplus_sdm845
Branch: lineage-16.0
Remote: github
Path: kernel/oneplus/sdm845
Adding dependency:
Repository: packages_apps_WallpapersBReel2018
Branch: pie
Remote: pixel-gitlab
Path: packages/apps/WallpapersBReel2018
Syncing dependencies
Fetching project packages_apps_WallpapersBReel2018
Fetching project luca020400/proprietary_vendor_oneplus
Fetching project LineageOS/android_kernel_oneplus_sdm845
Fetching project packages_resources_OppoGestures
warning: redirecting to https://gitlab.com/PixelExperience/packages_apps_WallpapersBReel2018.git/
remote: Enumerating objects: 13, done.
remote: Counting objects: 100% (13/13), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 172 (delta 11), reused 10 (delta 10), pack-reused 159
Receiving objects: 100% (172/172), 4.38 MiB | 1.98 MiB/s, done.
Resolving deltas: 100% (53/53), done.
From https://github.com/luca020400/proprietary_vendor_oneplus
* [new branch] lineage-16.0-luk -> github/lineage-16.0-luk
Username for 'https://github.com': remote: Enumerating objects: 110885, done.
remote: Counting objects: 100% (110885/110885), done.
remote: Compressing objects: 100% (1779/1779), done.
remote: Enumerating objects: 9, done.
remote: Counting objects: 100% (9/9), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 9 (delta 1), reused 0 (delta 0) | 1.05 MiB/s
From https://gitlab.com/PixelExperience/packages_apps_WallpapersBReel2018
* [new branch] pie -> pixel-gitlab/pie
Receiving objects: 100% (5415247/5415247), 1.08 GiB | 1.78 MiB/s, done.
Resolving deltas: 100% (4486437/4486437), done.ltas: 59% (2677098/4486437)
From https://github.com/LineageOS/android_kernel_oneplus_sdm845
* [new branch] lineage-16.0 -> github/lineage-16.0
Fetching projects: 75% (3/4)
Он застрял на Fetching projects: 75% (3/4)
на 3 часа, и я проанализировал системный монитор, который показывает, что сетевая активность не происходит. Итак, я убил это с помощью Ctrl + C.
Затем я пытаюсь проверить состояние, используя repo status
, который показывает несколько потребностей репозитория 'repo sync'. Итак, я начал синхронизировать все ожидающие проекты один за другим, используя repo sync <project name>
.
Я добился успеха во всех из них, кроме одного, чей репозиторий git недействителен.
Теперь, если я запускаю repo status
, то ответ:
Исключение в потоке Thread-446:
Traceback (последний вызов был последним):
Файл "/usr/lib/python2.7/threading.py", строка 801, в __bootstrap_inner
self.run ()
Файл "/usr/lib/python2.7/threading.py", строка 754, в работе
self .__ target (* self .__ args, ** self .__ kwargs)
Файл "/home/meritech/Work/pixel_experience/.repo/repo/subcmds/status.py", строка 107, в _StatusHelper
state = project.PrintWorkTreeStatus ()
Файл "/home/meritech/Work/pixel_experience/.repo/repo/project.py", строка 931, в PrintWorkTreeStatus
'--Refresh')
Файл "/home/meritech/Work/pixel_experience/.repo/repo/project.py", строка 2747, в runner
(self._project.name, name, p.stderr))
GitError: платформа / hardware / qcom / sdm845 / bt update-index: fatal: не репозиторий git (или любой родительский объект до точки монтирования /)
Остановка на границе файловой системы (GIT_DISCOVERY_ACROSS_FILESYSTEM не установлена).
Exception in thread Thread-447:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/home/meritech/Work/pixel_experience/.repo/repo/subcmds/status.py", line 107, in _StatusHelper
state = project.PrintWorkTreeStatus()
File "/home/meritech/Work/pixel_experience/.repo/repo/project.py", line 931, in PrintWorkTreeStatus
'--refresh')
File "/home/meritech/Work/pixel_experience/.repo/repo/project.py", line 2747, in runner
(self._project.name, name, p.stderr))
GitError: platform/hardware/qcom/sdm845/data/ipacfg-mgr update-index: fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
project packages/resources/OppoGestures/
missing (run "repo sync")
и если я просто проигнорирую это и соберу код
$ mka bacon -jX
затем ниже вывод:
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=9
CUSTOM_VERSION=PixelExperience_enchilada-9.0-20190108-1151-OFFICIAL
TARGET_PRODUCT=aosp_enchilada
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm64
TARGET_ARCH_VARIANT=armv8-2a
TARGET_CPU_VARIANT=cortex-a75
TARGET_2ND_ARCH=arm
TARGET_2ND_ARCH_VARIANT=armv8-a
TARGET_2ND_CPU_VARIANT=cortex-a75
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.15.0-43-generic-x86_64-Ubuntu-18.04.1-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=PQ1A.181205.006
OUT_DIR=/home/meritech/Work/pixel_experience/out
============================================
ninja: no work to do.
ninja: no work to do.
wildcard(/home/meritech/Work/pixel_experience/out/target/product/enchilada/clean_steps.mk) was changed, regenerating...
$(shell date -u +%Y%m%d-%H%M) was changed, regenerating...
[25/951] including development/build/Android.mk ...
development/build/build_android_stubs.mk:43: warning: android_stubs_current
development/build/build_android_stubs.mk:43: warning: metalava_android_stubs_current metalava_android_stubs_current
development/build/build_android_stubs.mk:43: warning: android_system_stubs_current
development/build/build_android_stubs.mk:43: warning: android_test_stubs_current
development/build/build_android_stubs.mk:43: warning: metalava_android_system_stubs_current metalava_android_system_stubs_current
development/build/build_android_stubs.mk:43: warning: metalava_android_test_stubs_current metalava_android_test_stubs_current
[535/951] including system/sepolicy/Android.mk ...
system/sepolicy/Android.mk:79: warning: BOARD_SEPOLICY_VERS not specified, assuming current platform version
system/sepolicy/Android.mk:89: warning: Be careful when using the SELINUX_IGNORE_NEVERALLOWS flag. It does not work in user builds and using it will not stop you from failing CTS.
[951/951] including vendor/qcom/opensource/dataservices/Android.mk ...
ninja: error: 'kernel/oneplus/sdm845/arch/arm64/configs/redflare_defconfig', needed by '/home/meritech/Work/pixel_experience/out/target/product/enchilada/obj/KERNEL_OBJ/.config', missing and no known rule to make it
17:22:34 ninja failed with: exit status 1
#### failed to build some targets (01:14 (mm:ss)) ####
Пожалуйста, помогите мне успешно создать этот диск.