آموزش ساخت ریکاوری 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$
پایان کار امیدوارم این آموزش هم مانند دیگر آموزشها مفید واقع شود موفق و پیروز باشید
هرگونه کپی برداری از متن بدون ذکر منبع شرعا حرام و مورد پسند نویسنده نمی باشد