آموزش های توسعه رام اندروید

آموزش ساخت ریکاوری CWMاز منبع(بخش پنجم و پایانی)

با بخش پایانی آموزش در خدمتتان هستیم با ما همراه باشید

زمان ساختن ریکاوری

به پوشه CM11 می رویم و در آنجا ترمینال را باز و کد زیر را وارد کنید

build/envsetup.sh

در اینجا می بینیم که شاخه دستگاه ما کاملا آمادست در قدم بعدی برای پیکربندی دستگاه کد زیر را وارد کنید

lunch cm_P780-eng

برای شروع ساخت ریکاوری از دستور زیر استفاده می کنیم

make -j4 recoveryimage

عددی که بعد از حرف J می نویسیم بیانگر تعداد کارهای است که میخواهیم در یک زمان انجام شوند به مقدار قدرت پردازش کامپیوتر خود این عدد را کم یا زیاد کنید.

بعد از اتمام کار بدون مشکلی باید مانند تصویر زیر را ببینید

و اگر از مدیاتک استفاده کردید مانند زیر می باشد

و ریکاوری جدید مانند شکل زیر می باشد

تبریک کار ساخت ریکاوری به پایان رسید در آخر به بررسی تعدادی خطاها که ممکن است در حین کار برایتان پیش بیایید می پردازیم

خطاها و راه حل برطرف کردن آنها

cp: cannot stat `/home/carliv/CM11-0/out/target/product/P780/root/init.recovery.*.rc': No such file or directory
make: [/home/carliv/CM11-0/out/target/product/P780/recovery/root.ts] Error 1 (ignored)

اگر با این خطا مواجه شدید می توانید آن را نادیده بگیرید،این خطا هنگامی که شما از init.recovery.{hardware}.rc استفاده نکنید بروز می دهید که مهم نیست

find: `bootable/recovery/res-720': No such file or directory
No private recovery resources for TARGET_DEVICE P780

این خطا به علت این قسمت رخ می دهد build/core/Makefile

ifeq ($(TARGET_RECOVERY_SCREEN_WIDTH),)
ifeq ($(TARGET_SCREEN_WIDTH),)
TARGET_RECOVERY_SCREEN_WIDTH := 720
else
TARGET_RECOVERY_SCREEN_WIDTH := $(TARGET_SCREEN_WIDTH)
endif
endif
.......
ifeq ($(recovery_resources_private),)
  $(info No private recovery resources for TARGET_DEVICE $(TARGET_DEVICE))
endif

این خطا رو هم می توان نادیده گرفت

'cortex-a7' is not a recognized processor for this target (ignoring processor)

این خطا در آخر کار اگر از مدیاتک استفاده کنید زیاد نماینگر می شود چود مدیاتک از cortex-7 arm processors پشتیبانی نمی کند پس مشکلی نیست این خطا بازم نادیده گرفته شود

Checking build tools versions...
/home/carliv/CM11-0/out/target/product/P780/obj/APPS/SignatureTest_intermediates
"ebtables is disabled on this build"
find: `src': No such file or directory

این خطا هنگامی رخ می دهد که از اندروید کیت کات استفاده کنید که بخاطر نبودن پوشه src در مسیر frameworks/base/tests/TileBenchmark می باشد تا اندروید 4.3 این پوشه وجود داشت.(cm 10.2)

ولی در هر شاخه اندروید 4.4 این پوشه وجود ندارد،دلیل نبودن این پوشه کاملا عجیب می باشد چون در فایل Android.mk همان پوشه فراخوانی می شود؟

برای حل این مشکل دو راه وجود دارد

راه اول ویرایش فایل Android.mk در TileBenchmark از

LOCAL_SRC_FILES := $(call all-java-files-under, src)

به این شکل

LOCAL_SRC_FILES :=

یا راه حل دوم پوشه src را از cm-10.2 کپی کنید به مسیر فایلهای خودتان.

در هر حال اگر هم نمی خواهید میتوانید بازم این خطا را نادیده بگیرید هیچ مشکلی در ساخت فایل شما بوجود نمی آید

carliv@max:~/CM11-0$ lunch cm_P780-eng
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/Lenovo/P780/cm.mk]]: "device/lenovo/P780/device_P780.mk" does not exist.  Stop.
Device P780 not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Repository for P780 not found in the CyanogenMod Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml.
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/Lenovo/P780/cm.mk]]: "device/lenovo/P780/device_P780.mk" does not exist.  Stop.

** Don't have a product spec for: 'cm_P780'
** Do you have the right repo manifest?

این خطا کاملا جدی می باشد و میتواند تمام پروسه ساخت را متوقف کند.برای ما موقعی رخ داد که به جایی استفاده از “lenovo” از “Lenovo” استفاده کردیم پس اگر برای شما رخ داد نام دستگاه را در تمام مسیر شاخهای دستگاه خود چک کنید

device/lenovo/P780/

پس دنبال خطایی املای و حروف بزرگ و کوچیک باشید برای رفع خطا چون نمی شود این خطا را نادیده گرفت و باید آن را حل کرد،به فایل زیر ما برای رفع مشکل حرف بزرگ اول اسم لنوو دقت کنید

carliv@max:~/CM11-0$ lunch cm_P780-eng
Trying dependencies-only mode on a non-existing device tree?

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.4.4
CM_VERSION=
TARGET_PRODUCT=cm_P780
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a7
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.13.0-43-generic-x86_64-with-Ubuntu-12.04-precise
HOST_BUILD_TYPE=release
BUILD_ID=KTU84Q
OUT_DIR=/home/carliv/CM11-0/out
============================================

carliv@max:~/CM11-0$

 

پایان کار امیدوارم این آموزش هم مانند دیگر آموزشها مفید واقع شود موفق و پیروز باشید

هرگونه کپی برداری از متن بدون ذکر منبع شرعا حرام و مورد پسند نویسنده نمی باشد

mohsen

محسن هستم 30 ساله طرفدار دنیایی متنوع اندروید و کاستوم رامها در Gsm-Developers

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا