[GUIDE] How to compile PhilZ Touch 6 Recovery for ARM android devices using BBQLinux

Search This thread

StefDrums

Senior Member
Jun 24, 2012
120
14
gsm.mk not found

Hello,
I'm trying to compile Philz Touch recovery for my Samsung S7582. I've done all the passages, and verified them many times, but the script blocks always at the same point.

When I try to do
Code:
lunch cm_S7582-eng
in bbqlinux terminal, it shows me this error:
Code:
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.
Device S7582 not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Repository for S7582 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/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.

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

After this error, I tried to do
Code:
make -j8 recoveryimage
but i give
Code:
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.

Please, can someone tells me what I done wrong and what is this gsm.mk file?
Thanks!
 

Santhosh M

Inactive Recognized Developer / Contributor
Hello,
I'm trying to compile Philz Touch recovery for my Samsung S7582. I've done all the passages, and verified them many times, but the script blocks always at the same point.

When I try to do
Code:
lunch cm_S7582-eng
in bbqlinux terminal, it shows me this error:
Code:
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.
Device S7582 not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Repository for S7582 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/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.

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

After this error, I tried to do
Code:
make -j8 recoveryimage
but i give
Code:
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.

Please, can someone tells me what I done wrong and what is this gsm.mk file?
Thanks!

This guide is to compile recovery for MTK device and i don't think your device is a Mediatek device. Plus if it's a ARM architecture device you haven't commented out certain things mentioned in first post. That's why you have been getting this errors. Plus on top of that you haven't read the guide at all. You no need to download repo from CM tree as you need to create device skeleton files using mkvendor.sh from your stock boot.img.
 
  • Like
Reactions: yuweng
D

Deleted member 5186178

Guest
Hello,
I'm trying to compile Philz Touch recovery for my Samsung S7582. I've done all the passages, and verified them many times, but the script blocks always at the same point.

When I try to do
Code:
lunch cm_S7582-eng
in bbqlinux terminal, it shows me this error:
Code:
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.
Device S7582 not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Repository for S7582 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/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.

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

After this error, I tried to do
Code:
make -j8 recoveryimage
but i give
Code:
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.

Please, can someone tells me what I done wrong and what is this gsm.mk file?
Thanks!

If at lunch command the builder show error finding device and is looking for it on github, then you need a sh file in your device tree to add the device to lunch list.
vendorsetup.sh which contain a line like this:
Code:
add_lunch_combo cm_S7582-eng
. If you have this one, next time you will do
Code:
. /build/envsetup.sh
it will be listed on lunch commands list, and on lunch command it won't be that error anymore.
Other thing is that you have a line in your cm.mk file
Code:
$(call inherit-product, vendor/cm/config/gsm.mk)
which doesn't work because maybe you have an incomplete building folder. Try to delete /vendor/cm folder and do a repo sync again. Anyway that line is from template device folder and that file gsm.mk it points to is blank (empty). It's safe to be deleted - the line I mean.
I see you use -j8... probably you have a six core CPU at least :good:
 

StefDrums

Senior Member
Jun 24, 2012
120
14
some news

I see you use -j8... probably you have a six core CPU at least :good:
Yes, but now i reduced them to "-j4".
I have some news: now the compiling process runs well withour errors, but I can't understand why I get no output compiled recovery.
Now when i do
Code:
lunch cm_S7582-eng
I get
Code:
Trying dependencies-only mode on a non-existing device tree?

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.4.4
CM_VERSION=
TARGET_PRODUCT=cm_S7582
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a9
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.16.1-1-ARCH-x86_64-with-glibc2.2.5
HOST_BUILD_TYPE=release
BUILD_ID=KTU84Q
OUT_DIR=/home/linux/cm11/out
============================================

So i start to make:
Code:
make -j4 recoveryzip
or:
Code:
make -j4 recoveryimage
But something doesn't work:
Code:
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.4.4
CM_VERSION=
TARGET_PRODUCT=cm_S7582
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a9
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.16.1-1-ARCH-x86_64-with-glibc2.2.5
HOST_BUILD_TYPE=release
BUILD_ID=KTU84Q
OUT_DIR=/home/linux/cm11/out
============================================
find: `bootable/recovery/res-480': No such file or directory
No private recovery resources for TARGET_DEVICE S7582
build/core/tasks/kernel.mk:63: ***************************************************************
build/core/tasks/kernel.mk:64: * Using prebuilt kernel binary instead of source              *
build/core/tasks/kernel.mk:65: * THIS IS DEPRECATED, AND WILL BE DISCONTINUED                *
build/core/tasks/kernel.mk:66: * Please configure your device to download the kernel         *
build/core/tasks/kernel.mk:67: * source repository to kernel/Samsung/S7582
build/core/tasks/kernel.mk:68: * See http://wiki.cyanogenmod.org/w/Doc:_integrated_kernel_building
build/core/tasks/kernel.mk:69: * for more information                                        *
build/core/tasks/kernel.mk:70: ***************************************************************
build/core/tasks/kernel.mk:199: warning: overriding recipe for target '/home/linux/cm11/out/target/product/S7582/kernel'
build/core/Makefile:44: warning: ignoring old recipe for target '/home/linux/cm11/out/target/product/S7582/kernel'
host Executable: mkbootimg (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/mkbootimg_intermediates/mkbootimg)
host Executable: acp (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/acp_intermediates/acp)
host Executable: minigzip (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/minigzip_intermediates/minigzip)
host Executable: checkpolicy (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/checkpolicy_intermediates/checkpolicy)
host Executable: checkfc (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/checkfc_intermediates/checkfc)
host Executable: clang-tblgen (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/clang-tblgen_intermediates/clang-tblgen)
host Executable: tblgen (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/tblgen_intermediates/tblgen)
preparing StaticLib: libc_common [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libbionic_ssp_intermediates/libbionic_ssp.a]
target StaticLib: liblogwrap (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/liblogwrap_intermediates/liblogwrap.a)
preparing StaticLib: libc_common [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_bionic_intermediates/libc_bionic.a]
target StaticLib: libext4_utils_static (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libext4_utils_static_intermediates/libext4_utils_static.a)
target StaticLib: libbatteryservice (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libbatteryservice_intermediates/libbatteryservice.a)
target StaticLib: libbinder (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libbinder_intermediates/libbinder.a)
target StaticLib: libutils (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libutils_intermediates/libutils.a)
target thumb C: minivold <= system/vold/vold.c
system/vold/vold.c: In function 'main':
system/vold/vold.c:19:14: error: unused parameter 'argc' [-Werror=unused-parameter]
system/vold/vold.c:19:27: error: unused parameter 'argv' [-Werror=unused-parameter]
cc1: all warnings being treated as errors
build/core/binary.mk:512: recipe for target '/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/minivold_intermediates/vold.o' failed
make: *** [/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/minivold_intermediates/vold.o] Error 1
make: *** Waiting for unfinished jobs....
preparing StaticLib: libc_common [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_freebsd_intermediates/libc_freebsd.a]
preparing StaticLib: libc_common [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_netbsd_intermediates/libc_netbsd.a]
preparing StaticLib: libc_common [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_tzcode_intermediates/libc_tzcode.a]
target StaticLib: libc_common (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_common_intermediates/libc_common.a)

But I get no "recovery.zip" or "recovery.img" output.
 

Santhosh M

Inactive Recognized Developer / Contributor
Yes, but now i reduced them to "-j4".
I have some news: now the compiling process runs well withour errors, but I can't understand why I get no output compiled recovery.
Now when i do
Code:
lunch cm_S7582-eng
I get
Code:
Trying dependencies-only mode on a non-existing device tree?

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.4.4
CM_VERSION=
TARGET_PRODUCT=cm_S7582
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a9
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.16.1-1-ARCH-x86_64-with-glibc2.2.5
HOST_BUILD_TYPE=release
BUILD_ID=KTU84Q
OUT_DIR=/home/linux/cm11/out
============================================

So i start to make:
Code:
make -j4 recoveryzip
or:
Code:
make -j4 recoveryimage
But something doesn't work:
Code:
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.4.4
CM_VERSION=
TARGET_PRODUCT=cm_S7582
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a9
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.16.1-1-ARCH-x86_64-with-glibc2.2.5
HOST_BUILD_TYPE=release
BUILD_ID=KTU84Q
OUT_DIR=/home/linux/cm11/out
============================================
find: `bootable/recovery/res-480': No such file or directory
No private recovery resources for TARGET_DEVICE S7582
build/core/tasks/kernel.mk:63: ***************************************************************
build/core/tasks/kernel.mk:64: * Using prebuilt kernel binary instead of source              *
build/core/tasks/kernel.mk:65: * THIS IS DEPRECATED, AND WILL BE DISCONTINUED                *
build/core/tasks/kernel.mk:66: * Please configure your device to download the kernel         *
build/core/tasks/kernel.mk:67: * source repository to kernel/Samsung/S7582
build/core/tasks/kernel.mk:68: * See http://wiki.cyanogenmod.org/w/Doc:_integrated_kernel_building
build/core/tasks/kernel.mk:69: * for more information                                        *
build/core/tasks/kernel.mk:70: ***************************************************************
build/core/tasks/kernel.mk:199: warning: overriding recipe for target '/home/linux/cm11/out/target/product/S7582/kernel'
build/core/Makefile:44: warning: ignoring old recipe for target '/home/linux/cm11/out/target/product/S7582/kernel'
host Executable: mkbootimg (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/mkbootimg_intermediates/mkbootimg)
host Executable: acp (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/acp_intermediates/acp)
host Executable: minigzip (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/minigzip_intermediates/minigzip)
host Executable: checkpolicy (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/checkpolicy_intermediates/checkpolicy)
host Executable: checkfc (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/checkfc_intermediates/checkfc)
host Executable: clang-tblgen (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/clang-tblgen_intermediates/clang-tblgen)
host Executable: tblgen (/home/linux/cm11/out/host/linux-x86/obj/EXECUTABLES/tblgen_intermediates/tblgen)
preparing StaticLib: libc_common [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libbionic_ssp_intermediates/libbionic_ssp.a]
target StaticLib: liblogwrap (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/liblogwrap_intermediates/liblogwrap.a)
preparing StaticLib: libc_common [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_bionic_intermediates/libc_bionic.a]
target StaticLib: libext4_utils_static (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libext4_utils_static_intermediates/libext4_utils_static.a)
target StaticLib: libbatteryservice (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libbatteryservice_intermediates/libbatteryservice.a)
target StaticLib: libbinder (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libbinder_intermediates/libbinder.a)
target StaticLib: libutils (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libutils_intermediates/libutils.a)
target thumb C: minivold <= system/vold/vold.c
system/vold/vold.c: In function 'main':
system/vold/vold.c:19:14: error: unused parameter 'argc' [-Werror=unused-parameter]
system/vold/vold.c:19:27: error: unused parameter 'argv' [-Werror=unused-parameter]
cc1: all warnings being treated as errors
build/core/binary.mk:512: recipe for target '/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/minivold_intermediates/vold.o' failed
make: *** [/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/minivold_intermediates/vold.o] Error 1
make: *** Waiting for unfinished jobs....
preparing StaticLib: libc_common [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_freebsd_intermediates/libc_freebsd.a]
preparing StaticLib: libc_common [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_netbsd_intermediates/libc_netbsd.a]
preparing StaticLib: libc_common [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_tzcode_intermediates/libc_tzcode.a]
target StaticLib: libc_common (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_common_intermediates/libc_common.a)

But I get no "recovery.zip" or "recovery.img" output.

Didn't you notice that it hasn't compiled and stopped at the above mentioned errors. Correct the errors above and only then it will compile
 
  • Like
Reactions: yuweng

StefDrums

Senior Member
Jun 24, 2012
120
14
errors?

Yes, i'm sure that during the compiling process there were some errors, but I can't find them.
Code:
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.4.4
CM_VERSION=
TARGET_PRODUCT=cm_S7582
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a9
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.16.1-1-ARCH-x86_64-with-glibc2.2.5
HOST_BUILD_TYPE=release
BUILD_ID=KTU84Q
OUT_DIR=/home/linux/cm11/out
============================================
find: `bootable/recovery/res-480': No such file or directory
No private recovery resources for TARGET_DEVICE S7582
build/core/tasks/kernel.mk:63: ***************************************************************
build/core/tasks/kernel.mk:64: * Using prebuilt kernel binary instead of source              *
build/core/tasks/kernel.mk:65: * THIS IS DEPRECATED, AND WILL BE DISCONTINUED                *
build/core/tasks/kernel.mk:66: * Please configure your device to download the kernel         *
build/core/tasks/kernel.mk:67: * source repository to kernel/Samsung/S7582
build/core/tasks/kernel.mk:68: * See http://wiki.cyanogenmod.org/w/Doc:_integrated_kernel_building
build/core/tasks/kernel.mk:69: * for more information                                        *
build/core/tasks/kernel.mk:70: ***************************************************************
build/core/tasks/kernel.mk:199: warning: overriding recipe for target '/home/linux/cm11/out/target/product/S7582/kernel'
build/core/Makefile:44: warning: ignoring old recipe for target '/home/linux/cm11/out/target/product/S7582/kernel'
Install: /home/linux/cm11/out/host/linux-x86/bin/acp
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fsck.exfat -> mount.exfat
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/bu -> recovery
preparing StaticLib: libc [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_common_intermediates/libc_common.a]
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkfs.exfat -> mount.exfat
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/make_ext4fs -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/busybox -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/edify -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dump_image -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/flash_image -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkyaffs2image -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unyaffs -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/erase_image -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/nandroid -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/reboot -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/volume -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setprop -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/getprop -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/start -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/stop -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dedupe -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/minizip -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setup_adbd -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fsck_msdos -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/newfs_msdos -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/vdc -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sdcard -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pigz -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fb2png -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/[ -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/[[ -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/ash -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/awk -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/basename -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/bbconfig -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/blkid -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/bzcat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/bzip2 -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/bunzip2 -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cal -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/catv -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chattr -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chcon -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chgrp -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chmod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chown -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chroot -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cksum -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/clear -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cmp -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cp -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cpio -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/nanddump -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/nandwrite -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cut -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/date -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dc -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dd -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/depmod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/devmem -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/df -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/diff -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dmesg -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dirname -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dos2unix -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/du -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/echo -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/egrep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/env -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/expand -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/expr -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/false -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fdisk -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fgrep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/find -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fold -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/free -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/freeramdisk -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fstrim -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fuser -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/getenforce -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/getopt -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/getsebool -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/grep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/groups -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/gunzip -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/gzip -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/head -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/hexdump -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/id -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/insmod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/install -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/killall -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/kill -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/killall5 -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/length -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/less -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/ln -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/losetup -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/ls -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lsattr -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lsmod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lspci -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lsusb -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lzcat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lzop -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lzopcat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/makedevs -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/matchpathcon -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/md5sum -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkdir -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkfifo -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkfs.ext2 -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mknod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkswap -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mktemp -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/modinfo -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/modprobe -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/more -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mount -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mountpoint -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mv -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/nice -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/nohup -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/od -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/patch -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pgrep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pidof -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pkill -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/printenv -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/printf -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/ps -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pstree -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pwd -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/rdev -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/readlink -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/realpath -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/renice -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/reset -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/resize -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/restorecon -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/rev -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/rm -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/rmdir -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/rmmod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/run-parts -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sed -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/selinuxenabled -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/seq -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sestatus -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setconsole -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setenforce -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setfiles -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setsebool -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setserial -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setsid -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sh -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sha1sum -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sha256sum -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sha512sum -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sleep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sort -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/stat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/split -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/strings -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/swapoff -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/stty -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/swapon -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sync -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sysctl -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/tac -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/tail -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/tar -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/tee -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/test -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/time -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/top -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/touch -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/tr -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/true -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/ttysize -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/umount -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/uname -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unexpand -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/uniq -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unix2dos -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unlzma -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unlzop -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unxz -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unzip -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/uptime -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/usleep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/uudecode -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/uuencode -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/watch -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/wc -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/which -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/whoami -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/xargs -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/xzcat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/zcat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/yes -> busybox
target Prebuilt: zip (/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/zip_intermediates/zip)
target Prebuilt: raw-backup.sh (/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/raw-backup.sh_intermediates/raw-backup.sh)
target Prebuilt: bootscripts_mnt.sh (/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/bootscripts_mnt.sh_intermediates/bootscripts_mnt.sh)
target Prebuilt: stitch.png (/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/stitch.png_intermediates/stitch.png)
target Prebuilt: virtual_keys.png (/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/virtual_keys.png_intermediates/virtual_keys.png)
make: *** No rule to make target '""', needed by '@echo'.  Stop.
make: *** Waiting for unfinished jobs....
Install: /home/linux/cm11/out/host/linux-x86/framework/dumpkey.jar
target StaticLib: libc (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_intermediates/libc.a)
I Think that someone fails, but really I can't undersand where. Please, can you help me?
 
D

Deleted member 5186178

Guest
Yes, i'm sure that during the compiling process there were some errors, but I can't find them.
Code:
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.4.4
CM_VERSION=
TARGET_PRODUCT=cm_S7582
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a9
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.16.1-1-ARCH-x86_64-with-glibc2.2.5
HOST_BUILD_TYPE=release
BUILD_ID=KTU84Q
OUT_DIR=/home/linux/cm11/out
============================================
find: `bootable/recovery/res-480': No such file or directory
No private recovery resources for TARGET_DEVICE S7582
build/core/tasks/kernel.mk:63: ***************************************************************
build/core/tasks/kernel.mk:64: * Using prebuilt kernel binary instead of source              *
build/core/tasks/kernel.mk:65: * THIS IS DEPRECATED, AND WILL BE DISCONTINUED                *
build/core/tasks/kernel.mk:66: * Please configure your device to download the kernel         *
build/core/tasks/kernel.mk:67: * source repository to kernel/Samsung/S7582
build/core/tasks/kernel.mk:68: * See http://wiki.cyanogenmod.org/w/Doc:_integrated_kernel_building
build/core/tasks/kernel.mk:69: * for more information                                        *
build/core/tasks/kernel.mk:70: ***************************************************************
build/core/tasks/kernel.mk:199: warning: overriding recipe for target '/home/linux/cm11/out/target/product/S7582/kernel'
build/core/Makefile:44: warning: ignoring old recipe for target '/home/linux/cm11/out/target/product/S7582/kernel'
Install: /home/linux/cm11/out/host/linux-x86/bin/acp
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fsck.exfat -> mount.exfat
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/bu -> recovery
preparing StaticLib: libc [including  /home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_common_intermediates/libc_common.a]
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkfs.exfat -> mount.exfat
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/make_ext4fs -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/busybox -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/edify -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dump_image -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/flash_image -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkyaffs2image -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unyaffs -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/erase_image -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/nandroid -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/reboot -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/volume -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setprop -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/getprop -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/start -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/stop -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dedupe -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/minizip -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setup_adbd -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fsck_msdos -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/newfs_msdos -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/vdc -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sdcard -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pigz -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fb2png -> recovery
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/[ -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/[[ -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/ash -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/awk -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/basename -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/bbconfig -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/blkid -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/bzcat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/bzip2 -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/bunzip2 -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cal -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/catv -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chattr -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chcon -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chgrp -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chmod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chown -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/chroot -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cksum -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/clear -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cmp -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cp -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cpio -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/nanddump -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/nandwrite -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/cut -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/date -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dc -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dd -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/depmod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/devmem -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/df -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/diff -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dmesg -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dirname -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/dos2unix -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/du -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/echo -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/egrep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/env -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/expand -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/expr -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/false -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fdisk -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fgrep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/find -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fold -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/free -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/freeramdisk -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fstrim -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/fuser -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/getenforce -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/getopt -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/getsebool -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/grep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/groups -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/gunzip -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/gzip -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/head -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/hexdump -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/id -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/insmod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/install -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/killall -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/kill -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/killall5 -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/length -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/less -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/ln -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/losetup -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/ls -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lsattr -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lsmod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lspci -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lsusb -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lzcat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lzop -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/lzopcat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/makedevs -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/matchpathcon -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/md5sum -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkdir -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkfifo -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkfs.ext2 -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mknod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mkswap -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mktemp -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/modinfo -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/modprobe -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/more -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mount -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mountpoint -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/mv -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/nice -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/nohup -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/od -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/patch -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pgrep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pidof -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pkill -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/printenv -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/printf -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/ps -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pstree -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/pwd -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/rdev -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/readlink -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/realpath -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/renice -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/reset -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/resize -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/restorecon -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/rev -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/rm -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/rmdir -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/rmmod -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/run-parts -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sed -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/selinuxenabled -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/seq -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sestatus -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setconsole -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setenforce -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setfiles -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setsebool -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setserial -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/setsid -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sh -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sha1sum -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sha256sum -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sha512sum -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sleep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sort -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/stat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/split -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/strings -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/swapoff -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/stty -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/swapon -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sync -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/sysctl -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/tac -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/tail -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/tar -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/tee -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/test -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/time -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/top -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/touch -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/tr -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/true -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/ttysize -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/umount -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/uname -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unexpand -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/uniq -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unix2dos -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unlzma -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unlzop -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unxz -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/unzip -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/uptime -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/usleep -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/uudecode -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/uuencode -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/watch -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/wc -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/which -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/whoami -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/xargs -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/xzcat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/zcat -> busybox
Symlink: /home/linux/cm11/out/target/product/S7582/recovery/root/sbin/yes -> busybox
target Prebuilt: zip (/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/zip_intermediates/zip)
target Prebuilt: raw-backup.sh (/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/raw-backup.sh_intermediates/raw-backup.sh)
target Prebuilt: bootscripts_mnt.sh (/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/bootscripts_mnt.sh_intermediates/bootscripts_mnt.sh)
target Prebuilt: stitch.png (/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/stitch.png_intermediates/stitch.png)
target Prebuilt: virtual_keys.png (/home/linux/cm11/out/target/product/S7582/obj/RECOVERY_EXECUTABLES/virtual_keys.png_intermediates/virtual_keys.png)
make: *** No rule to make target '""', needed by '@echo'.  Stop.
make: *** Waiting for unfinished jobs....
Install: /home/linux/cm11/out/host/linux-x86/framework/dumpkey.jar
target StaticLib: libc (/home/linux/cm11/out/target/product/S7582/obj/STATIC_LIBRARIES/libc_intermediates/libc.a)
I Think that someone fails, but really I can't undersand where. Please, can you help me?

These errors are somewhere in recovery. It's possible that one of the prebuilt modules to have a problem, or something next to them. Check if you have a complete functional recovery folder (maybe something's missing), or if there are some changes you have to make in CM-11.0 code. Check the recovery README or the author's thread.
 
  • Like
Reactions: keemi and yuweng

yuweng

Senior Member
Feb 5, 2012
1,172
4,226
@StefDrums Already mentioned at post #2, don't let the DEVs trying to help you guessing what device spec you have . . . :rolleyes:
What to do when reporting error
A single line reply Unfortunately it doesn't work won't help.

Always provide as much info as possible, attach your BoardConfig.mk, recovery.fstab or any mkvendor.sh files that you have edited, attach compile.log, attach PhilZ Touch generated recovery.log this will help in trouble-shooting, identifying & solving your problems.
Code:
find: `bootable/recovery/[COLOR="Red"]res-480[/COLOR]': No such file or directory
Santhosh M already given you hint above so do you have below at your BoardConfig.mk . . .
Code:
TARGET_SCREEN_HEIGHT := 800
TARGET_SCREEN_WIDTH := 480
And always use hide button to hide your extremely long compile log to keep this thread easier to follow or you can just attach your compile logs . . .

And fyi, i've just build PhilZ Touch again today just to make sure it is build-able . . .
6.59.0.png
Phil3759 said:
Keep in mind that for now, the sources are solid rock and can continue to be compiled and used probably for the next few months, and much more for older devices

And pls read this & since your signature has link to CWM then obviously PhilZ Touch will boot but if your device uses custom boot.mk & you didn't specify it at BoardConfig.mk then obviously it won't boot. Ask the original CWM DEV for the device tree, it will be easier for you . . .
 

roshan2989

Senior Member
Apr 10, 2012
829
189
Purgatory
i cant seems to found the "BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x1400000"..?

just try this method on adb and teminal cat /proc/mtd its show "no such directory..?
 

HridayHS

Senior Member
Jun 14, 2014
501
984
Delhi
Hey @yuweng I has downloaded latest BBQlinux 2015 one. I was using in VM Virtual Box. When I was syncing sources there was a error in last..Fatal error and Input/output error. And in cm11 folder only ’ .repo ' folder i have seen and no file is there ’ mkvendor.sh '. I want to compile it please let me what will I do now. I have MICROMAX CANVAS 2 PLUS A110Q (MT6589).

I hope you will help me and wait for screenshots. I will give screenshots when I will compile again. It always give error.

Thanks in Advance and Happy New Year! 2K15!
 

Santhosh M

Inactive Recognized Developer / Contributor
Hey @yuweng I has downloaded latest BBQlinux 2015 one. I was using in VM Virtual Box. When I was syncing sources there was a error in last..Fatal error and Input/output error. And in cm11 folder only ’ .repo ' folder i have seen and no file is there ’ mkvendor.sh '. I want to compile it please let me what will I do now. I have MICROMAX CANVAS 2 PLUS A110Q (MT6589).

I hope you will help me and wait for screenshots. I will give screenshots when I will compile again. It always give error.

Thanks in Advance and Happy New Year! 2K15!

How can master figure out if you blindly say fatal error. Post a detailed message of what mistake it showed. As you have clearly said the sync has failed at the end, there will be nothing inside your cm11 folder except a .repo folder and so you can't expect mkvendor to be inside ur cm11 folder. Only if your sync has completed the contents from .repo will expand to outside.
 
Last edited:

HridayHS

Senior Member
Jun 14, 2014
501
984
Delhi
How can master figure out if you blindly say fatal error. Post a detailed message of what mistake it showed. As you have clearly said the sync has failed at the end, there will be nothing inside your cm11 folder except a .repo folder and so you can't expect mkvendor to be inside ur cm11 folder. Only if your sync has completed the contents from .repo will expand to outside.

Sorry, next time I will post detailed message. The sync was completed only few lines was showing that INPUT/OUTPUT ERROR and after completing sync no mkvendor.sh was there so, this is because of BBQLINUX or my mistake.

I am downloading bbqlinux once again so, I will report you if the same thing happened with me and next time I will show detailed message.
 

Santhosh M

Inactive Recognized Developer / Contributor
Compiling ended
Untitled.jpg

Size of recovery is only 1.1 MB? Not sure what to do next?
where did I go wrong?

Help, help!! :)

Compiling has stopped due to error and recovery hasn't been compiled. The final message u see at the bottom is not recovery image. Scroll above some more lines back and see what the error is and debug accordingly
 

7alizani

Member
Jul 21, 2011
49
9
Sarajevo
I was able to compile without errors
succes.jpg

But when I test it with
fastboot boot recovery.img
or flashing it directly it won't boot

My Fstab:
# Android fstab file.
#<src> <mnt_point> <type> <mnt_flags> <fs_mgr_flags>
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK

/dev/block/mmcblk0p47 /boot emmc defaults defaults
/dev/block/mmcblk0p48 /recovery emmc defaults defaults
/dev/block/mmcblk0p50 /system ext4 ro,seclabel,noatime,data=ordered wait
/dev/block/mmcblk0p51 /data ext4 rw,seclabel,nosuid,nodev,relatime,discard,noauto_da_alloc,data=ordered wait,check
/dev/block/mmcblk0p49 /cache ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered wait,check
/dev/block/mmcblk0p44 /devlog ext4 rw,seclabel,nosuid,nodev,relatime,errors=continue,data=ordered wait
/dev/block/mmcblk0p33 /fataldevlog ext4 rw,seclabel,nosuid,nodev,relatime,errors=continue,data=ordered wait
/dev/block/mmcblk0p27 /firmware/radio vfat ro,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro wait
/dev/block/mmcblk0p17 /firmware/wcnss vfat ro,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro wait
/dev/block/mmcblk0p22 /custdata ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered defaults

/devices/msm_sdcc.2/mmc_host auto auto defaults voldmanaged=sdcard1:auto
/devices/platform/xhci-hcd auto auto defaults voldmanaged=usb:auto

Mounts and emmc informations of my device:
C:\adb>adb shell cat /proc/mounts
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
none /sys/fs/cgroup/memory cgroup rw,relatime,memory 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/mmcblk0p50 /system ext4 rw,seclabel,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,relat
ime,discard,noauto_da_alloc,data=ordered 0 0
/dev/block/mmcblk0p49 /cache ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered
0 0
/dev/block/mmcblk0p44 /devlog ext4 rw,seclabel,nosuid,nodev,relatime,errors=cont
inue,data=ordered 0 0
/dev/block/mmcblk0p33 /fataldevlog ext4 rw,seclabel,nosuid,nodev,relatime,errors
=continue,data=ordered 0 0
adb /dev/usb-ffs/adb functionfs rw,relatime 0 0
/dev/block/mmcblk0p27 /firmware/radio vfat ro,relatime,uid=1000,gid=1000,fmask=0
337,dmask=0227,codepage=437,iocharset=iso8859-1,shortname=lower,errors=remount-r
o 0 0
/dev/block/mmcblk0p17 /firmware/wcnss vfat ro,relatime,uid=1000,gid=1000,fmask=0
337,dmask=0227,codepage=437,iocharset=iso8859-1,shortname=lower,errors=remount-r
o 0 0
pstore /sys/fs/pstore pstore rw,relatime 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,relatime,user_id=1023,group_i
d=1023,default_permissions,allow_other 0 0
/dev/block/vold/179:33 /mnt/media_rw/ext_sd vfat rw,dirsync,nosuid,nodev,noexec,
relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,i
ocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/block/vold/179:33 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexec,rela
time,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocha
rset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/fuse /storage/ext_sd fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=10
23,default_permissions,allow_other 0 0

C:\adb>adb shell cat /proc/emmc
dev: size erasesize name
mmcblk0p1: 00100000 00000200 "sbl1"
mmcblk0p2: 02000000 00000200 "pg1fs"
mmcblk0p3: 00004000 00000200 "board_info"
mmcblk0p4: 00ef7c00 00000200 "reserve_1"
mmcblk0p5: 00040000 00000200 "mfg"
mmcblk0p6: 017afc00 00000200 "pg2fs"
mmcblk0p7: 00040000 00000200 "sbl1_update"
mmcblk0p8: 00040000 00000200 "rpm"
mmcblk0p9: 00200000 00000200 "tz"
mmcblk0p10: 00008000 00000200 "sdi"
mmcblk0p11: 00400000 00000200 "hboot"
mmcblk0p12: 00500000 00000200 "sp1"
mmcblk0p13: 00200000 00000200 "hyp"
mmcblk0p14: 00100000 00000200 "wifi"
mmcblk0p15: 00008000 00000200 "ddr"
mmcblk0p16: 00100000 00000200 "dsps"
mmcblk0p17: 00500000 00000200 "wcnss"
mmcblk0p18: 00100000 00000200 "rfg_0"
mmcblk0p19: 00100000 00000200 "rfg_1"
mmcblk0p20: 00100000 00000200 "rfg_2"
mmcblk0p21: 00100000 00000200 "rfg_3"
mmcblk0p22: 00100000 00000200 "rfg_4"
mmcblk0p23: 00100000 00000200 "rfg_5"
mmcblk0p24: 00100000 00000200 "rfg_6"
mmcblk0p25: 00100000 00000200 "rfg_7"
mmcblk0p26: 00180000 00000200 "fsg"
mmcblk0p27: 04b00400 00000200 "radio"
mmcblk0p28: 00400000 00000200 "tool_diag"
mmcblk0p29: 00b00000 00000200 "reserve_2"
mmcblk0p30: 00100000 00000200 "misc"
mmcblk0p31: 00180000 00000200 "modem_st1"
mmcblk0p32: 00180000 00000200 "modem_st2"
mmcblk0p33: 01400000 00000200 "fataldevlog"
mmcblk0p34: 00001000 00000200 "debug_config"
mmcblk0p35: 00040000 00000200 "pdata"
mmcblk0p36: 00004000 00000200 "control"
mmcblk0p37: 00140400 00000200 "local"
mmcblk0p38: 00010000 00000200 "extra"
mmcblk0p39: 00100000 00000200 "cdma_record"
mmcblk0p40: 00000400 00000200 "fsc"
mmcblk0p41: 00002000 00000200 "ssd"
mmcblk0p42: 00040000 00000200 "skylink"
mmcblk0p43: 01900000 00000200 "carrier"
mmcblk0p44: 01400000 00000200 "devlog"
mmcblk0p45: 00500000 00000200 "backup_hboot"
mmcblk0p46: 02328800 00000200 "reserve"
mmcblk0p47: 01000000 00000200 "boot"
mmcblk0p48: 01000000 00000200 "recovery"
mmcblk0p49: 14000000 00000200 "cache"
mmcblk0p50: a0000000 00000200 "system"
mmcblk0p51: 08000000 00000200 "userdata"

My device uses Qualcomm MSM8916 Snapdragon 410 (x64). Anybody to point me in right direction. BoardConfig.mk, and all files are in attachment.
 

Santhosh M

Inactive Recognized Developer / Contributor
I was able to compile without errors
succes.jpg

But when I test it with
or flashing it directly it won't boot

My Fstab:


Mounts and emmc informations of my device:




My device uses Qualcomm MSM8916 Snapdragon 410 (x64). Anybody to point me in right direction. BoardConfig.mk, and all files are in attachment.

Okay so its a Qualcomm device. Pull a recovery log and see what's wrong.

Sd410 is a newer range chipset and needs more graphic support for touch recoveries such as philz and twrp. Philz is closed long back and hence u should consider twrp maybe. ( philz can still work i believe ) First try with cwm and try to boot it. I myself have been making a try of twrp on a sd410 device and is struck right now at graphical glitches.
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 33
    [GUIDE]
    How to compile PhilZ Touch 6 Recovery
    CWM Advanced Edition 6.x
    With Part-Source using prebuilt kernel for any android devices


    Intro
    PhilZ Touch is developed by XDA Recognized Developer Phil3759, it is open source & you can compile it on your own.

    Video Preview

    You don't need to have a PHD in computer science to build from source.

    This guide details the whole process for building PhilZ Touch recovery for MediaTek SoC & it should work on any other android devices that uses ARM architecture.

    This guide's aim is to provide enthusiast who would like to try their hands on building PhilZ Touch from source but was turn off by the huge cm repo size. There are hundreds if not thousands of android devices that doesn't have CyanogenMod BUT you can still build PhilZ Touch recovery !

    Many have no choice but to download full cm source & many has successfully built PhilZ Touch in spite of it.

    As of today the month of Aug 2014, cm-11.0 repo has grow to 473 projects with the total of more than 12GB & this is only the compress hidden folder .repo

    When the files are extracted, the whole ~/cm11 folder will be double the size !

    Now you don't have to worry about that anymore, the projects for building PhilZ Touch has been identified & you only need 40 of the cm projects instead of the complete 473 & the size of .repo now for building PhilZ Touch is only 1.7GB. Conclusion, you don't need the extra 10.5GB from full source to build PhilZ Touch since your device doesn't have CyanogenMod !

    Most important requirement : Willingness to learn, READ, continue reading, continue trying, stop asking questions all the time as most of your questions has already been answered, google it & most importantly, self-taught by looking at various example here. Look for the same SoC closes siblings to your device for recovery.fstab & BoardConfig.mk & compare it with yours.

    However, when you have already gone through all that & still couldn't find an answer then ask or you'll never know . . . :laugh:

    Always refer to the main thread here plenty of infos . . . :good:
    Step 1
    How to start

    There are already plenty of guides so i won't touch on it, refer to the below on how to get started . . .

    How to install Virtualbox on Windows

    Download the latest x64 BBQLinux

    Getting Started with BBQLinux

    WARNING
    Always make a backup of your device Factory ROM first with MTK Droid Root & Tools, my old guide here

    Lock Bootloaders device then you can forget about building PhilZ Touch from source . . . :laugh:

    Step 2
    Syncing Part-Source

    Updates -> Refer to this post . . .

    Download & unzip the script to your [HOME]. Start Mate Terminal & follow below command.
    Code:
    chmod 777 ~/PhilZ
    ./PhilZ [COLOR="Red"]<- Execute it by typing [COLOR="Blue"]dot forward-slash PhilZ[/COLOR][/COLOR]
    Screenshot
    syncing.png

    You can stop the script at any time by pressing Ctrl + z
    To resume then execute the script again.

    Misc Tips

    Pls be patient, first sync will take quite awhile depending on your ISP

    Screenshot of Part-Source script when finish syncing
    script.jpg

    You can also drag & drop it from your host OS
    View attachment 2918982

    Pull your MTK device boot.img directly to BBQLinux then you have to enable the USB port on Virtualbox first.
    USB.jpg

    Check your MT65xx_Android_scatter.txt for boot or recovery partition size
    Code:
    - partition_index: SYS9
      partition_name: BOOTIMG
      file_name: [COLOR="blue"]boot.img[/COLOR]
      is_download: true
      type: NORMAL_ROM
      linear_start_addr: 0x1DA0000
      physical_start_addr: 0x1DA0000
      partition_size: 0x[COLOR="blue"]A00000[/COLOR]
      region: EMMC_USER
      storage: HW_STORAGE_EMMC
      boundary_check: true
      is_reserved: false
      operation_type: UPDATE
      reserve: 0x00
    
    - partition_index: SYS10
      partition_name: RECOVERY
      file_name: [COLOR="blue"]recovery.img[/COLOR]
      is_download: true
      type: NORMAL_ROM
      linear_start_addr: 0x27A0000
      physical_start_addr: 0x27A0000
      partition_size: [COLOR="Blue"]0x1400000[/COLOR]
      region: EMMC_USER
      storage: HW_STORAGE_EMMC
      boundary_check: true
      is_reserved: false
      operation_type: UPDATE
      reserve: 0x00

    You can also use adb shell cat /proc/dumchar_info to check too.
    Code:
    [COLOR="blue"]Part_Name	    Size		StartAddr     Type	MapTo[/COLOR]
    bootimg      0x0000000000[COLOR="blue"]A00000[/COLOR]   0x0000000001DA0000   2   /dev/block/mmcblk0
    recovery     0x000000000[COLOR="blue"]1400000[/COLOR]   0x00000000027A0000   2   /dev/block/mmcblk0

    Use Calculator or Online Hex to Dec & convert it to decimal.
    0xA00000 = 10485760
    0x1400000 = 20971520
    Code:
    adb shell "dd if=/dev/[COLOR="Blue"]bootimg[/COLOR] of=/mnt/sdcard/[COLOR="blue"]boot.img[/COLOR] bs=[COLOR="blue"]10485760[/COLOR] count=1"
    adb pull /mnt/sdcard/[COLOR="blue"]boot.img[/COLOR]
    adb shell rm /mnt/sdcard/[COLOR="blue"]boot.img[/COLOR]
    [COLOR="blue"]OR[/COLOR]
    adb shell "dd if=/dev/[COLOR="blue"]recovery[/COLOR] of=/mnt/sdcard/[COLOR="blue"]recovery.img[/COLOR] bs=[COLOR="blue"]20971520[/COLOR] count=1"
    adb pull /mnt/sdcard/[COLOR="blue"]recovery.img[/COLOR]
    adb shell rm /mnt/sdcard/[COLOR="blue"]recovery.img[/COLOR]
    Step 3
    Setting up the files

    Now that you have sync the Part-Source, you will need to use mkvendor.sh to generate the skeleton files for building PhilZ Touch.

    Copy your device boot.img or recovery.img to [HOME]
    cd ~/cm11
    build/tools/device/mkvendor.sh vendor_name device_name ~/boot.img
    OR
    build/tools/device/mkvendor.sh vendor_name device_name ~/recovery.img

    Eg. build/tools/device/mkvendor.sh Lenovo S939 ~/boot.img
    mkvendor.sh will auto-generate eight files for your device needed for building PhilZ Touch
    AndroidBoard.mk
    AndroidProducts.mk
    BoardConfig.mk
    cm.mk
    device_device_name.mk
    kernel
    recovery.fstab
    system.prop

    Screenshot of mkvendor.sh
    mkvendor.sh.png

    You need to edit the files as listed below only. Below are examples, do not copy & paste, refer to here & here.

    Put all PhilZ Touch build flags at the bottom of the BoardConfig.mk under a heading of #PhilZ Touch build flags for easy reference

    ~/cm11/device/Lenovo/S939/BoardConfig.mk
    Code:
    USE_CAMERA_STUB := true
    
    # inherit from the proprietary version
    -include vendor/Lenovo/S939/BoardConfigVendor.mk
    
    TARGET_ARCH := arm
    TARGET_NO_BOOTLOADER := true
    TARGET_BOARD_PLATFORM := unknown [COLOR="red"]<- Non-critical, you can either leave it as it is or change to any name[/COLOR]
    TARGET_CPU_ABI := armeabi-v7a
    TARGET_CPU_ABI2 := armeabi
    TARGET_ARCH_VARIANT := armv7-a-neon
    TARGET_CPU_VARIANT := cortex-a7 [COLOR="red"]<- Critical, either cortex-a5, cortex-a7, cortex-a8, cortex-a9, cortex-a15, krait, scorpion or generic[/COLOR]
    TARGET_CPU_SMP := true
    ARCH_ARM_HAVE_TLS_REGISTER := true
    
    TARGET_BOOTLOADER_BOARD_NAME := S939
    
    BOARD_KERNEL_CMDLINE := 
    BOARD_KERNEL_BASE := 0x10000000
    BOARD_KERNEL_PAGESIZE := 2048
    
    # fix this up by examining /proc/mtd on a running device
    BOARD_BOOTIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_RECOVERYIMAGE_PARTITION_SIZE := [COLOR="Blue"]0x1400000[/COLOR] [COLOR="red"]<- Change this accordingly to your recovery size so that build will error when its oversize[/COLOR]
    BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_FLASH_BLOCK_SIZE := 131072
    
    TARGET_PREBUILT_KERNEL := device/Lenovo/S939/kernel
    
    BOARD_HAS_NO_SELECT_BUTTON := true
    
    [COLOR="Blue"]#PhilZ Touch build flags for MTK[/COLOR]
    TARGET_COMMON_NAME := Lenovo S939
    BOARD_USE_MTK_LAYOUT := true
    BOARD_MTK_BOOT_LABEL := "/bootimg"
    BOARD_USE_NTFS_3G := false
    BRIGHTNESS_SYS_FILE := "/sys/class/leds/lcd-backlight/brightness"
    TARGET_USE_CUSTOM_LUN_FILE_PATH := "/sys/devices/virtual/android_usb/android0/f_mass_storage/lun%d/file" [COLOR="Red"]<- Credits to [B][COLOR="Black"]RD[/COLOR][/B] [URL="https://github.com/chrmhoffmann/android_device_wiko_stairway/blob/cm-11.0/BoardConfig.mk#L79"][U]chrmhoffmann[/U][/URL][/COLOR]
    TARGET_SCREEN_HEIGHT := 1280
    TARGET_SCREEN_WIDTH := 720
    BOARD_CUSTOM_BOOTIMG_MK := device/Lenovo/S939/boot.mk [COLOR="Red"]<- Credits to [B][COLOR="Black"]RD[/COLOR][/B] [URL="http://xdaforums.com/showthread.php?t=2676086"][U]chrmhoffmann[/U][/URL]. [B][COLOR="Black"]MTK[/COLOR][/B] uses custom [COLOR="Blue"]mkbootimg[/COLOR][/COLOR]


    ~/cm11/device/Lenovo/S939/cm.mk
    Code:
    ## Specify phone tech before including full_phone
    $(call inherit-product, vendor/cm/config/gsm.mk)
    
    # Release name
    PRODUCT_RELEASE_NAME := S939
    
    # Inherit some common CM stuff.
    [COLOR="Red"]#[/COLOR]$(call inherit-product, vendor/cm/config/common_full_phone.mk) [COLOR="red"]<- Disable it to use this Part-Source or ERROR 1. You don't need this for building [COLOR="blue"]PhilZ Touch[/COLOR][/COLOR]
    
    # Inherit device configuration
    $(call inherit-product, device/Lenovo/S939/device_S939.mk)
    
    ## Device identifier. This must come after all inclusions
    PRODUCT_DEVICE := S939
    PRODUCT_NAME := cm_S939
    PRODUCT_BRAND := Lenovo
    PRODUCT_MODEL := S939
    PRODUCT_MANUFACTURER := Lenovo


    ~/cm11/device/Lenovo/S939/recovery.fstab
    Code:
    # Android fstab file.
    # The filesystem that contains the filesystem checker binary (typically /system) cannot
    # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
    
    /dev/bootimg   /bootimg   emmc  defaults  defaults
    /dev/recovery  /recovery  emmc  defaults  defaults
    /dev/uboot     /uboot 	  emmc  defaults  defaults
    /emmc@android  /system    ext4  ro,noatime                            wait
    /emmc@cache    /cache     ext4  noatime,nosuid,nodev,noauto_da_alloc  wait
    /emmc@usrdata  /data      ext4  noatime,nosuid,nodev,noauto_da_alloc  wait,encryptable=footer
    
    /devices/platform/mtk-msdc.0/mmc_host/mmc0  auto  vfat  defaults  voldmanaged=sdcard0:[COLOR="Blue"]4[/COLOR] [COLOR="red"]<- Change accordingly to your [B][COLOR="Black"]MTK[/COLOR][/B] fat partition no.[/COLOR]
    /devices/platform/mtk-msdc.1/mmc_host/mmc1  auto  vfat  defaults  voldmanaged=sdcard1:auto


    ~/cm11/device/Lenovo/S939/device_S939.mk
    Code:
    $(call inherit-product, $(SRC_TARGET_DIR)/product/languages_full.mk)
    
    # The gps config appropriate for this device
    [COLOR="Red"]#[/COLOR]$(call inherit-product, device/common/gps/gps_us_supl.mk) [COLOR="Red"]<- Disable it to use this Part-Source or ERROR 1.[/COLOR]
    
    $(call inherit-product-if-exists, vendor/Lenovo/S939/S939-vendor.mk)
    
    DEVICE_PACKAGE_OVERLAYS += device/Lenovo/S939/overlay
    
    LOCAL_PATH := device/Lenovo/S939
    ifeq ($(TARGET_PREBUILT_KERNEL),)
    	LOCAL_KERNEL := $(LOCAL_PATH)/kernel
    else
    	LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
    endif
    
    PRODUCT_COPY_FILES += 
        $(LOCAL_KERNEL):kernel
    
    $(call inherit-product, build/target/product/full.mk)
    
    PRODUCT_BUILD_PROP_OVERRIDES += BUILD_UTC_DATE=0
    PRODUCT_NAME := full_S939
    PRODUCT_DEVICE := S939
    
    [STRIKE][COLOR="Blue"]#PhilZ Touch[/COLOR]
    PRODUCT_COPY_FILES += 
        $(LOCAL_PATH)/recovery.fstab:recovery/root/fstab.[COLOR="blue"]mt6592[/COLOR] [COLOR="Red"]<- adb shell getprop ro.hardware to identify it.[/STRIKE][/color]
    Updates
    Above PRODUCT_COPY_FILES doesn't work anymore, just create a new folder recovery/root at your device tree & copy fstab.${ro.hardware} to it & it'll auto copy fstab.${ro.hardware} to root of ramdisk . For this Eg. : ~/cm11/device/Lenovo/S939/recovery/root/fstab.mt6592. Credits : Master Shifu Carliv


    Custom mkbootimg
    ~/cm11/device/Lenovo/S939/boot.mk
    Credits to Chris Hoffmann AKA RD chrmhoffmann , now you can automate the whole build process, no need to unpack/ repack after building !
    Code:
    define make_header
      perl -e 'print pack("a4 L a32 a472", "x88x16x88x58", $$ARGV[0], $$ARGV[1], "xFF"x472)' $(1) $(2) > $(3)
    endef
    
    $(recovery_ramdisk).mtk.header: $(recovery_ramdisk)
    	size=$$($(call get-file-size,$(recovery_ramdisk))); 
    		$(call make_header, $$((size)), "RECOVERY", $@)
    $(recovery_ramdisk).mtk:  $(MKBOOTIMG) $(recovery_ramdisk).mtk.header
    	$(call pretty,"Adding MTK header to recovery ramdisk.")
    	cat $(recovery_ramdisk).mtk.header $(recovery_ramdisk) > $@
    
    INTERNAL_MTK_RECOVERYIMAGE_ARGS := 
    		--kernel $(PRODUCT_OUT)/[COLOR="Blue"]kernel[/COLOR] 
    		--ramdisk $(recovery_ramdisk).mtk
    
    $(INSTALLED_RECOVERYIMAGE_TARGET): $(MKBOOTIMG) 
    		$(recovery_ramdisk).mtk $(PRODUCT_OUT)/[COLOR="Blue"]kernel[/COLOR] 
    	@echo -e ${CL_CYN}"----- Making recovery image ------"${CL_RST}
    	$(MKBOOTIMG) $(INTERNAL_MTK_RECOVERYIMAGE_ARGS) 
    		$(BOARD_MKBOOTIMG_ARGS) --output $@
    	$(hide) $(call assert-max-image-size,$@, 
    		$(BOARD_RECOVERYIMAGE_PARTITION_SIZE),raw)
    	@echo -e ${CL_CYN}"Made recovery image: $@"${CL_RST}
    Step 4
    Start Building it !

    Below are the commands to build, thats it !
    Code:
    cd ~/cm11
    export USE_CCACHE=1
    prebuilts/misc/linux-x86/ccache/ccache -M 50G
    source build/envsetup.sh
    lunch cm_[COLOR="Blue"]S939[/COLOR]-eng [COLOR="Red"]<- Change accordingly to your [COLOR="Blue"]device_name[/COLOR][/COLOR]
    make -j8 recoveryimage
    Video Preview

    Misc Tips
    First build will take quite awhile, pls be patient however subsequence build will be quick b'cos of ccache.

    if you hate cli like i do then you can automate it, no need to type it every time since you are building for the same device that you own.

    s939.png
    Use geany & fill in the commands accordingly to your device.

    execute.png
    Make it executable by right-click at the file name -> Properties -> Permissions -> Put a Tick at Allow executing file as program. Execute it by typing ./s939 or whatever your file name is.

    GNU make
    GNU make can handle parallel tasks with a -j# argument.
    Code:
    make -j[COLOR="Blue"]#[/COLOR] recoveryimage
    Replace the # with the core count +1, so if you have a dual core it's -j3 and a quad core becomes -j5, etc.

    Above is applicable for Native-Boot, on Virtualbox -j8 will work even if you have the old Pentium II except your host OS will lag.
    Code:
    make -j8 recoveryimage 2>&1 | tee ~/Documents/compile.log
    You can also use above command so that you can refer to the compile.log for error checking.

    Subsequent Build
    Refer to post #2 -> Misc Tips -> Make clean before each recompiling or your flag changes will not be picked up !
    Step 5
    Push it directly to your device

    Screenshot of Build Completed
    complete.png

    Screenshot of adb push
    push.png
    Code:
    adb push ~/cm11/out/target/product/[COLOR="red"]S939[/COLOR]/recovery.img /mnt/sdcard
    adb shell "dd if=/mnt/sdcard/recovery.img of=/dev/recovery"
    adb reboot recovery
    Misc Tips
    You can also use Flashify or Mobileuncle to install it too.
    Congrats, now you have compiled & install PhilZ Touch to your MTK device . . . :good:

    Notes about 4.4 Kit Kat ROMs and SELinux

    Mostly new android devices doesn't provide kernel source so you need to unpack your stock recovery or stock ROM, manually copy file_contexts, property_contexts & seapp_contexts to replace the one at PhilZ Touch, repack it back to fully support SELinux backup & restore.

    No need to replace sepolicy as this binary is built with the latest source. On top of that, sepolicy from stock recovery.img mostly are oudated & the size is huge compare to the one from PhilZ Touch but that is entirely up to you whether to use either one.

    XDA members that has success in building PhilZ Touch for any other android devices please share your experience & tips here too so that this will help out others when they face the same problem . . . :good:

    Source

    Confirmed working PhilZ Touch using this guide(mkvendor.sh technique)
    All MediaTek(MT65xx) devices
    LG L90(msm8226) thanks to shoxxy

    Hopefully with this guide, many will be able to kick-start development & port a working PhilZ Touch to their android devices. :cool:

    Updates 09 April 2016
    Its been awhile i've never build PhilZ Touch & as Phil3759 says, her source is solid rock & can be build to support many legacy devices & also new devices too, there has been confirmation that it still works on Android-6.0 Marshmellow too... :good:

    Only found out that it doesn't build today & since Phil3759 has retired from this project, as usual, you'll need to revert commits to make it build again.... :cowboy:
    Code:
    cd ~/cm11/system/core
    git revert --no-edit [URL="https://github.com/CyanogenMod/android_system_core/commit/6bac0a9fedc711a7dfacd6865ec4923dd332182b"]6bac0a9fedc711a7dfacd6865ec4923dd332182b[/URL]

    XDA:DevDB Information
    Compile PhilZ Touch from source using BBQLinux Distro, Tool/Utility for all devices (see above for details)

    Contributors
    yuweng, Phil3759
    Source Code: https://github.com/PhilZ-cwm6/philz_touch_cwm6


    Version Information
    Status: Stable
    Current Stable Version: 6.59.0
    Stable Release Date: 2014-10-14

    Created 2014-08-30
    Last Updated 2016-04-08
    10
    BoardConfig.mk optional build flags
    You can always find all the detail for building PhilZ Touch with optional build flags here & available screen resolutions here . . . :good: If your screen res is not available then choose the one nearest to your device res.

    Others undocumented flags such as below can be found here
    Code:
    BATTERY_LEVEL_PATH 
    BOARD_POST_UNBLANK_COMMAND 
    RECOVERY_TOUCHSCREEN_SWAP_XY 
    RECOVERY_TOUCHSCREEN_FLIP_X
    RECOVERY_TOUCHSCREEN_FLIP_Y 
    BOARD_USE_B_SLOT_PROTOCOL 
    BOARD_HAS_NO_FB2PNG
    BOARD_RECOVERY_BLDRMSG_OFFSET
    ENABLE_LOKI_RECOVERY
    BOARD_CUSTOM_RECOVERY_KEYMAPPING
    BOARD_CUSTOM_RECOVERY_UI
    TARGET_USERIMAGES_USE_F2FS
    BOARD_USES_BML_OVER_MTD
    TARGET_USERIMAGES_USE_F2FS
    NO_AROMA_FILE_MANAGER

    To use any of these optional build flags, typically is just to add a true at the back
    Eg : BOARD_HAS_NO_FB2PNG : = true to your BoardConfig.mk

    Flags like BRIGHTNESS_SYS_FILE obviously then you'll need to find out the path ONLY when it doesn't work. For most android devices BRIGHTNESS_SYS_FILE := "/sys/class/backlight/panel/brightness" should work.

    Use adb shell su -c "ls -R" > myandroid.txt to find out where is your BRIGHTNESS_SYS_FILE. This command will list out your whole android device directory so it shall give you some clues for the lun file path needed to mount both the sdcard too, typically this will work for most devices.

    Below flags is to set different graphics modes that may be needed to correct colours on some devices. Use only when your compiled PhilZ Touch has some weird looking colours or graphics & try one at a time but not all at the same time !
    Code:
    TARGET_RECOVERY_PIXEL_FORMAT := "BGRA_8888"
    TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888"
    TARGET_RECOVERY_PIXEL_FORMAT := "RGB_565"

    Note
    If your kernel doesn't support NTFS-3G then you must use this build flag BOARD_USE_NTFS_3G := false or your compiled PhilZ Touch most probably won't boot
    recovery.fstab

    PhilZ Touch uses recovery.fstab v2 & if you use recovery.fstab v1 then most probably it won't boot.

    Always refer to here to look for the closes siblings to your device.

    If your device doesn't have any cm tree, you can still find out alot of info from your stock recovery.img. Use Repack Utils or Android Image Kitchen to unpack your stock recovery.img & look at /etc/recovery.fstab to look for clues . . . :good: Unpack PhilZ Touch built by other DEV too & see how they did it . . . google is your best friend so hunt for it.

    Typically you'll only need to backup boot, system, data & cache partition only. Later when you have succeeded in building PhilZ Touch for your device then you can add other optional partition. Typically basic recovery.fstab is good enough, it will be able to restore your device back to a working state. You will also need to identify the correct internal & external sdcard path too so that PhilZ Touch can make backup to either one. Note : This is not the same path as BoardConfig.mk refer to this Eg. here.

    Use adb commands such as below to find out more about your device partition . . .
    Code:
    adb shell cat /proc/partitions
    adb shell cat /proc/mtd
    adb shell cat /proc/emmc
    adb shell cat /proc/dumchar_info
    adb shell cat /proc/cmdline
    adb shell cat /proc/mounts
    adb shell cat /proc/devices
    adb shell ls -al /dev/block
    adb shell df
    If your device already have a working CWM then you can also check the existing recovery.fstab by rebooting to recovery & use below command.
    Code:
    adb shell cat /etc/recovery.fstab
    Updates
    adb shell su -c "ls -R" > myandroid.txt will tell you alot of infos regarding your device. Just found out on MTK, below can also be use for PhilZ Touch.
    Code:
    # Android fstab file.
    # The filesystem that contains the filesystem checker binary (typically /system) cannot
    # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
    
    #<src>           <mnt_point>    <type>  <mnt_flags and options>   <fs_mgr_flags>
    /dev/bootimg      /bootimg       emmc    defaults                  defaults
    /dev/recovery     /recovery      emmc    defaults                  defaults
    /dev/uboot        /uboot         emmc    defaults                  defaults
    [COLOR="Blue"]/dev/block/platform/mtk-sd.0/by-num/p3[/COLOR]    /system    ext4    ro,noatime                              wait
    [COLOR="blue"]/dev/block/platform/mtk-sd.0/by-num/p4[/COLOR]    /cache     ext4    noatime,nosuid,nodev,noauto_da_alloc    wait
    [COLOR="blue"]/dev/block/platform/mtk-sd.0/by-num/p5[/COLOR]    /data      ext4    noatime,nosuid,nodev,noauto_da_alloc    wait,encryptable=footer
    
    [COLOR="blue"]/dev/block/platform/mtk-sd.0/by-num/p6[/COLOR]    auto    vfat    defaults    voldmanaged=sdcard0:auto
    [COLOR="blue"]/dev/block/platform/mtk-sd.1/by-num/p1[/COLOR]    auto    vfat    defaults    voldmanaged=sdcard1:auto
    OR
    Code:
    # Android fstab file.
    # The filesystem that contains the filesystem checker binary (typically /system) cannot
    # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
    
    #<src>                <mnt_point>     <type>  <mnt_flags and options>                <fs_mgr_flags>
    /dev/bootimg            /bootimg       emmc    defaults                                defaults
    /dev/recovery           /recovery      emmc    defaults                                defaults
    /dev/uboot              /uboot         emmc    defaults                                defaults
    [COLOR="blue"]/dev/block/mmcblk0p3[/COLOR]    /system        ext4    ro,noatime                              wait
    [COLOR="blue"]/dev/block/mmcblk0p4[/COLOR]    /cache         ext4    noatime,nosuid,nodev,noauto_da_alloc    wait
    [COLOR="blue"]/dev/block/mmcblk0p5[/COLOR]    /data          ext4    noatime,nosuid,nodev,noauto_da_alloc    wait,encryptable=footer
    
    [COLOR="blue"]/dev/block/mmcblk0p6[/COLOR]    auto    vfat    defaults    voldmanaged=sdcard0:auto
    [COLOR="blue"]/dev/block/mmcblk1p1[/COLOR]    auto    vfat    defaults    voldmanaged=sdcard1:auto

    WARNING
    This could be the single most important part when it comes to building PhilZ Touch recovery.

    If you wrongly use the path for recovery.fstab the outcome could be disasterous !

    GIGO so please do some research first, you have been fore-warned . . . :cool:

    Part-Source
    i wrote this simple script that will only sync the needed projects for building PhilZ Touch, no matter how cm projects grows it will still sync only the 40 needed projects . . . :cowboy:

    As mentioned at the script, if it doesn't build then obviously some of the remove projects are needed then look for clues at the build ERROR1.

    There are two methods to rectify it. Eg. If the build ERROR1 something about bash . . .

    Method 1
    Open ~/cm11/.repo/local_manifests/local_manifest.xml, look for any keyword bash & add remarks as below or just delete that whole line, do a repo sync again & it will download & auto-extract it to ~/cm11/external/bash
    Code:
    [COLOR="blue"]<!--[/COLOR] <remove-project name="CyanogenMod/android_external_bash" /> [COLOR="blue"]-->[/COLOR]

    Method 2
    Open PhilZ script, add as below to Line 22, run the script again & it will do everything automatically for you . . . :cool:
    Code:
    grep -v [COLOR="blue"]bash[/COLOR] ~/Documents/x>~/Documents/x.tmp;mv ~/Documents/x.tmp ~/Documents/x

    You can also add additional needed projects to Line 82 too, just follow Line 81 for reference . . .

    ARM11
    ARM11 AKA ARMv6 boots on PhilZ Touch too, thanks to the androidarmv6 development team . . . :good:

    Add the below to Line 82, delete whole ~/cm11/bionic folder, add a # remark to bionic & execute PhilZ script to sync the Part-Source needed to build for arm11 devices
    Code:
    echo -e "<project path=\"bionic\" name=\"androidarmv6/android_bionic\" revision=\"cm-11.0\" />" >> ~/Documents/x
    Code:
    [COLOR="Red"]#[/COLOR]grep -v bionic ~/Documents/x>~/Documents/x.tmp;mv ~/Documents/x.tmp ~/Documents/x
    You will also need to edit BoardConfig.mk as below for compiling PhilZ Touch for arm11 devices
    Code:
    TARGET_CPU_ABI := [COLOR="blue"]armeabi-v6l[/COLOR]
    TARGET_ARCH_VARIANT := [COLOR="blue"]armv6-vfp[/COLOR]
    TARGET_CPU_VARIANT := [COLOR="blue"]arm11[/COLOR]
    [COLOR="Red"]#[/COLOR]ARCH_ARM_HAVE_TLS_REGISTER := true [COLOR="blue"]<- Most [COLOR="Blue"]arm11[/COLOR] devices doesn't have [URL="http://arowboat.wordpress.com/2011/08/10/android-linux-arm-and-tls-register-emulation/"]TLS[/URL] & if you enable it then it won't boot ![/COLOR]

    Syncing Part-Source on Ubuntu or other Distro
    Open Terminal & type export PATH=~/bin:$PATH first then only it'll sync correctly provided you have setup the BE correctly BUT don't come ERROR reporting here as this thread details building PhilZ Touch on BBQLinux only . . . :cool:

    You are completely on your own so please look for solutions here or hunt for similar solutions here on XDA, tons of guides for building on Ubuntu & other distro . . . :cowboy:

    Why use other Distro when you have BBQLinux which is specifically made for Android development by codeworkx . . . :good:

    Build cm kernel
    If your device have cm kernel source then un-remark Line 68, 69 & update the necessary device specific flags, defconfig & SELinux . . .
    Misc Tips
    Factory ROM Back Up
    Always google & research how to make a Factory ROM back up for your device & always make at least x3 so that in case one corrupted, you still have another two . . . :cowboy:

    Typically, you'll find all these infos at your vendors website such as Sony Devices, HTC Devices, Samsung Devices & etc.

    Many vendors also offer firmware updates too at their website such as Motorola & you should have a copy before even starting modding your device !

    Files from vendor
    To be able to install update.zip from your vendor then you'll need to do some minor editing.
    Code:
    adb shell "getprop ro.product.model"
    adb shell "getprop ro.product.device"
    or refer to your build.prop for
    Code:
    ro.product.model=[COLOR="blue"]Lenovo S939[/COLOR]
    ro.product.device=[COLOR="blue"]S939[/COLOR]
    and update it accordingly to default.prop at compiled PhilZ Touch

    Alternate commands
    For building recovery
    Code:
    cd ~/cm11
    export USE_CCACHE=1
    prebuilts/misc/linux-x86/ccache/ccache -M 50G
    source build/envsetup.sh
    
    source build/tools/device/makerecoveries.sh cm_[COLOR="Red"]S939[/COLOR]-eng [COLOR="Blue"]<- Change accordingly to your [COLOR="red"]device_name[/COLOR][/COLOR][COLOR="Blue"]
    OR[/COLOR]
    lunch cm_[COLOR="Blue"]S939[/COLOR]-eng [COLOR="Red"]<- Change accordingly to your [COLOR="blue"]device_name[/COLOR][/COLOR]
    mka recoveryimage [COLOR="blue"]<- Thanks to [B]RD[/B] [URL="http://xdaforums.com/showpost.php?p=55295969&postcount=15"]PlayfulGod[/URL]. More info [URL="http://wiki.cyanogenmod.org/w/Envsetup_help#mka"]refer to here[/URL][/COLOR]
    Sync corruption
    git & repo is like a Super Intelligent Source Code Auto-Resume Downloader when working together . . . :good:
    You can stop it at any time, restart it back & it will auto-resume.

    cm-11.0 repo & source code is located at ~/cm11/.repo, it is a hidden folder & to view hidden folder via caja, you need to press Ctrl + h

    Sometimes you have corruption then repo sync wouldn't work & normally you just need to delete manifests, manifests.git, manifests.xml with a repo init & repo sync then you'll be back to normal.

    If still this doesn't solve the problem then delete everything EXCEPT the folder project-objects & projects, both of this is the actual source code folder.

    After this a repo init then repo sync & everything will be back to normal, i guarantee, done this many times, no worries . . . :laugh:

    Make a secondary HDD & backup this hidden folder .repo & in case of OS corruption then you can anytime just copy it back to ~/cm11/.repo, repo init, repo sync & you'll have the whole cm-11.0 source code in a few minutes, no need to download it all over again. Make a backup of your bbqlinux.vdi too . . . :good:
    Code:
    cd ~/cm11
    repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
    repo sync -f -j8 [COLOR="Red"]<- You can increase this to parallel download but if ERROR then lower it[/COLOR]

    git checkout
    git & github again when working together is like a Super Intelligent Source Code Reviewer & Tracker.

    For Eg. 6.57.5 doesn't boot while your previous compiled 6.56.8 boots.

    You can use git checkout to revert it back to 6.56.8 to confirm it.
    Code:
    cd ~/cm11/bootable/recovery
    git log [COLOR="Red"]<- Press [B]Enter[/B] to scroll & [B]Ctrl[/B] + [B]z[/B] to break[/COLOR]
    git checkout [COLOR="blue"]86a7b310c2eadabbcbcd99243fc66bb197132446[/COLOR]
    Screenshot
    gitlog1.png

    OR
    Code:
    git checkout [COLOR="blue"]86a7b31[/COLOR]
    Screenshot
    gitlog2.png
    You can always review Phil3759 latest commits here . . .

    To check your PhilZ Touch currently at which commits
    Code:
    cd ~/cm11/bootable/recovery
    git log -1

    When it boots then git checkout the next newer commits, this way you'll be able to pinpoint which commits is the culprit.

    If still it doesn't boot then there is definitely something wrong with your setup . . . :laugh:

    Make clean
    For building PhilZ Touch you don't really have to make clean before each new build. I've notice many DEV uses various make clean commands as listed below . . .
    Code:
    cd ~/cm11
    make clean
    make clobber
    make dataclean
    make installclean
    make -j4 clean dataclean installclean

    make clean = Wipe everything inside ~/cm11/out & it will take you another 30 to 45 min to recompile if you didn't use ccache ! Just manually delete the device folder at $OUT will do.

    Eg. ~/cm11/out/target/product/S939 <- just manually delete S939 folder will do

    This will speed up the whole build process on the next build & typically, it will only take 2 minutes to rebuild . . . :laugh: i've wrote a script that automatically & continuously for building PhilZ Touch for MTK arm11, cortex-a9 & cortex-a7, all boots, all without make clean only remove the device folder at $OUT . . . :cool:

    With ccache typically it will take 5 to 10 min after each make clean

    Compiled recovery.img
    If your SoC is not Qualcomm then most probably the compiled recovery.img will not boot b'cos it is not pack to your device format.

    Eg. MTK & Sony Xperia L

    So you'll need to find out how to repack it back to your device format then only it will boot ! Unless a DEV has already develop the format, refer to here for Eg . . .

    Many doesn't know that ramdisk-recovery.img is actually the ramdisk repacked gzip file. Use below command to extract it.
    Code:
    cd ~/cm11
    source build/envsetup.sh
    lunch cm_[COLOR="Red"]S939[/COLOR]-eng <- Change accordingly to your [COLOR="red"]device_name[/COLOR]
    cd $OUT
    mkdir ramdisk
    cd ramdisk
    gzip -dc ../ramdisk-recovery.img | cpio -i

    Or you can also make all the necessary editing to $OUT/recovery/root then repack it to gzip
    Typical command
    Code:
    cd $OUT/recovery/root
    find . | cpio -o -H newc | gzip > ../../newramdisk.cpio.gz

    i don't own all android devices on the market so i donno what are the commands or procedures that will work for your device, you will have to find that out yourself. Typical repacking command
    Code:
    cd $OUT
    mkbootimg --kernel kernel --ramdisk newramdisk.cpio.gz -o new_recovery.img

    Again, google is your best friend . . .
    Error reporting

    Before reporting an error always look for solutions at Q&A here as most of them has already been answered. As mentioned, google is your best friend so go & hunt for it.

    When you bump into an obstacle, typically you would wanna solve it ASAP. Try taking a break then come back a few days later & Voila, the answer will be right in front of you ! Trust me, provided you did google it . . . :cowboy:

    Compilation error
    If you have compilations error then refer to the compile.log & look for clues.
    Code:
    make -j8 recoveryimage 2>&1 | tee ~/Documents/[COLOR="Blue"]compile.log[/COLOR]
    Typically, it will be a few line above ERROR1. Sometime you may need to scroll up a bit more & sometimes the build error doesn't hint anything at all !

    For example below, i have remove bison
    Code:
    prebuilts/misc/linux-x86/bison/[COLOR="blue"]bison[/COLOR] -d  -o /home/yuweng/cm11/out/target/product/MediaTek/obj/STATIC_LIBRARIES/libedify_intermediates/parser.cpp bootable/recovery/edify/parser.y
    target thumb C: libminzip <= bootable/recovery/minzip/SysUtil.c
    prebuilts/misc/linux-x86/bison/[COLOR="Blue"]bison[/COLOR]: external/bison/data/m4sugar/m4sugar.m4: cannot open: No such file or directory
    build/core/binary.mk:375: recipe for target '/home/yuweng/cm11/out/target/product/MediaTek/obj/STATIC_LIBRARIES/libedify_intermediates/parser.cpp' failed
    make: *** [/home/yuweng/cm11/out/target/product/MediaTek/obj/STATIC_LIBRARIES/libedify_intermediates/parser.cpp] [COLOR="Red"]Error 1[/COLOR]
    make: *** Waiting for unfinished jobs....

    Part-Source as of Aug 2014, builds working PhilZ Touch & if later it doesn't then always refer to here as Phil3759 might add new feature that requires additional projects.

    Always refer to compile.log & build ERROR1 should give some hints, again, if it doesn't then google is your best friend . . . :laugh:

    Error log
    If compiled PhilZ Touch boots with a blank screen & adb is working then you can still get a log out of it.
    Code:
    adb shell pull /tmp/recovery.log

    You can also try below command to capture screenshot while at PhilZ Touch
    Code:
    adb shell /sbin/fb2png
    adb pull /data/local/fbdump.png

    If compiled PhilZ Touch boots with GUI then you can generate error reporting. Advanced Functions -> Report Error.

    adb commands
    Sometimes you need kill adb first then only it will connect. Try below commands
    Code:
    adb kill-server
    adb start-server
    adb devices
    adb reboot
    adb reboot recovery

    What to do when reporting error
    A single line reply Unfortunately it doesn't work won't help.

    Always provide as much info as possible, attach your BoardConfig.mk, recovery.fstab or any mkvendor.sh files that you have edited, attach compile.log, attach PhilZ Touch generated recovery.log this will help in trouble-shooting, identifying & solving your problems.
    Credits

    Phil3759 for continuously developing, improving & maintaining PhilZ Touch . . . :good:

    Daniel Hillenbrand AKA codeworkx for continuously developing, improving & maintaining BBQLinux . . . :good:

    CyanogenMod Team & contributors for continuously developing, improving & maintaining CyanogenMod repo . . . :good:

    Samantha for doing a coverage of this thread at the XDA Portal . . . :good:

    Last but not least, my Master Shifu Carliv who has taught me how to compile from source & continuously guiding me to the right direction . . . :good:

    Give credit where credit is due . . . :good:
    5
    ;)

    First :cool: !!!!

    Everytime afraid to see your detailed , and good to follow tutorials......
    will start now ;) to show my way for lg msm8226 device ;)

    THX MY FRIEND
    ***************************************************************************************************************************************

    Here is my way to compile Philz Touch for LG L90 (w7) (D405EU) using yuwengs Cm-11 parted_source.


    This Method should be similar for other LG Devices, like: "G2" + "G2 Mini" and other.... NOT TESTED !!!

    let"s go:


    To the point: "Syncing Part-source" you can follow the instructions of yuwengs tutorial from this thread.

    additionally for our Lg Device we need mkbootimg from THIS link. developed by xiaolu ( thx for this)....

    in our case we unpack the downloaded zip to Home so we have a new folder now. Named " mkbootimg_tools-master "

    Copy stock boot.img or recovery.img from your device to your Home folder.

    Open Terminal, and type :

    Code:
    cd ~/cm11
    build/tools/device/mkvendor.sh lge w7 ~/boot.img
    [COLOR="Blue"]or[/COLOR]
    build/tools/device/mkvendor.sh lge w7 ~/recovery.img
    
    [COLOR="Blue"]then[/COLOR]
    
    cd ~/mkbootimg_tools-master
    chmod 777 mkboot
    ./mkboot ~/boot.img stockboot[/QUOTE]
    
    in your [B]mkbootimg_tools-master[/B] folder is a new folder named [B]stockboot[/B], copy the file [B]dt.img[/B] from there to:
     ~/cm11/device/lge/w7
     
    [B]Open & edit the files as listed below
    Put all PhilZ Touch build flags at the bottom of the BoardConfig.mk under a heading of #PhilZ Touch build flags for easy reference[/B]
    
    ~/cm11/device/lge/w7/[COLOR="Blue"]BoardConfig.mk[/COLOR]
    
    [code]USE_CAMERA_STUB := true
    
    # inherit from the proprietary version
    -include vendor/lge/w7/BoardConfigVendor.mk
    
    TARGET_GLOBAL_CFLAGS += -mfpu=neon -mfloat-abi=softfp
    TARGET_GLOBAL_CPPFLAGS += -mfpu=neon -mfloat-abi=softfp
    TARGET_ARCH := arm
    TARGET_NO_BOOTLOADER := true
    TARGET_BOARD_PLATFORM := unknown    <- Non_Critical
    TARGET_CPU_ABI := armeabi-v7a
    TARGET_CPU_ABI2 := armeabi
    TARGET_ARCH_VARIANT := armv7-a-neon
    TARGET_CPU_VARIANT := krait                  [COLOR="Red"]<- Critical, either cortex-a5, cortex-a7, cortex-a8, cortex-a9, cortex-a15, krait, scorpion or generic[/COLOR]
    ARCH_ARM_HAVE_TLS_REGISTER := true
    
    TARGET_BOOTLOADER_BOARD_NAME := w7
    
    # Kernel Prebuilt
    TARGET_PREBUILT_KERNEL := device/lge/w7/kernel
    BOARD_MKBOOTIMG_ARGS := --dt device/lge/w7/dt.img    [COLOR="Red"]<- VERY IMPORTANT !!! otherwise recovery won"t boot[/COLOR]
    BOARD_KERNEL_CMDLINE := console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 user_debug=31 msm_rtb.filter=0x37 androidboot.hardware=w7
    BOARD_KERNEL_BASE := 0x00000000
    BOARD_KERNEL_PAGESIZE := 2048
    
    # fix this up by examining /proc/mtd on a running device
    BOARD_BOOTIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x105c0000  [COLOR="Red"]<- Change this accordingly to your recovery size so that build will error when its oversize[/COLOR]
    BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_FLASH_BLOCK_SIZE := 131072
    
    BOARD_HAS_NO_SELECT_BUTTON := true
    
    #Recovery
    BRIGHTNESS_SYS_FILE := "/sys/class/leds/lcd-backlight/brightness"
    TARGET_USE_CUSTOM_LUN_FILE_PATH := "/sys/devices/virtual/android_usb/android0/f_mass_storage/lun%d/file"
    TARGET_NO_BOOTLOADER := true
    TARGET_RECOVERY_FSTAB := device/lge/w7/rootdir/fstab.w7
    RECOVERY_FSTAB_VERSION := 2
    TARGET_RECOVERY_PIXEL_FORMAT := "RGBX_8888"
    BOARD_USE_CUSTOM_RECOVERY_FONT := \"roboto_10x18.h\"
    HAVE_SELINUX := true
    BOARD_HAS_NO_MISC_PARTITION := true
    TARGET_RECOVERY_QCOM_RTC_FIX := true
    TARGET_USERIMAGES_USE_F2FS := true
    TARGET_SCREEN_HEIGHT := 960
    TARGET_SCREEN_WIDTH := 540
    TARGET_COMMON_NAME := LG L90

    ~/cm11/device/lge/w7/cm.mk

    Code:
    ## Specify phone tech before including full_phone
    $(call inherit-product, vendor/cm/config/gsm.mk)
    
    # Release name
    PRODUCT_RELEASE_NAME := w7
    
    # Inherit some common CM stuff.
    [COLOR="Red"]#[/COLOR]$(call inherit-product, vendor/cm/config/common_full_phone.mk)  [COLOR="Red"]<- Disable it[/COLOR]
    
    
    # Inherit device configuration
    $(call inherit-product, device/lge/w7/device_w7.mk)
    
    ## Device identifier. This must come after all inclusions
    PRODUCT_DEVICE := w7
    PRODUCT_NAME := cm_w7
    PRODUCT_BRAND := lge
    PRODUCT_MODEL := w7
    PRODUCT_MANUFACTURER := lge

    ~/cm11/device/lge/w7/recovery.fstab

    Code:
    # Android fstab file.
    # The filesystem that contains the filesystem checker binary (typically /system) cannot
    # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
    #
    #<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
    /devices/msm_sdcc.2/mmc_host auto vfat defaults voldmanaged=sdcard1:auto,noemulatedsd
    /dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,barrier=1 wait,check
    /dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 noatime,nosuid,nodev,barrier=1,noauto_da_alloc,discard,data=ordered,errors=continue wait,check,encryptable=/dev/block/platform/msm_sdcc.1/by-name/encrypt
    /dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 noatime,nosuid,nodev,barrier=1,data=ordered wait,check
    /dev/block/platform/msm_sdcc.1/by-name/boot /boot emmc defaults defaults
    /dev/block/platform/msm_sdcc.1/by-name/recovery /recovery emmc defaults defaults
    /dev/block/platform/msm_sdcc.1/by-name/misc /misc emmc defaults defaults

    ~/cm11/device/lge/w7/device_w7.mk

    Code:
    $(call inherit-product, $(SRC_TARGET_DIR)/product/languages_full.mk)
    
    # The gps config appropriate for this device
    [COLOR="Red"]#[/COLOR]$(call inherit-product, device/common/gps/gps_us_supl.mk)  [COLOR="Red"]<- Disable it[/COLOR]
    
    $(call inherit-product-if-exists, vendor/lge/w7/w7-vendor.mk)
    
    DEVICE_PACKAGE_OVERLAYS += device/lge/w7/overlay
    
    LOCAL_PATH := device/lge/w7
    ifeq ($(TARGET_PREBUILT_KERNEL),)
    	LOCAL_KERNEL := $(LOCAL_PATH)/kernel
    else
    	LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
    endif
    
    PRODUCT_COPY_FILES += \
        $(LOCAL_KERNEL):kernel
    
    $(call inherit-product, build/target/product/full.mk)
    
    PRODUCT_BUILD_PROP_OVERRIDES += BUILD_UTC_DATE=0
    PRODUCT_NAME := full_w7
    PRODUCT_DEVICE := w7
    
    #PhilZ Touch
    PRODUCT_COPY_FILES += 
        $(LOCAL_PATH)/recovery.fstab:recovery/root/fstab.w7 [COLOR="Red"]<- adb shell getprop ro.hardware to identify it.[/COLOR]


    LG L90 Device Specific. (maybe other LG Devices to):


    Our L90 have no Hardware Key Combo to boot direct into recovery, we only could get into the LG internal " Factory data reset " menue with the Volume - & Power Key Combo

    if we both ask confirm with yes, Recovery will boot and do automatic a factory reset and reboot. If we Softbricked now by an accident, we get into a "Loop". because theres no working system that can be factory reseted :)
    and we have to manual reflash the device.
    For this reason we change = ~/cm11/bootable/recovery/recovery.c

    Code:
    1176        case 's': send_intent = optarg; break;
    1177        case 'u': update_package = optarg; break;
    1178        case 'w': wipe_data = wipe_cache = 0; break;  [COLOR="Red"]<- Change 1 to 0[/COLOR]
    1179        case 'm': wipe_media = 1; break;
    1180        case 'c': wipe_cache = 1; break;

    now recovery boots up " Normal " when we choose Factory Reset by LG Hardware Combo ;)

    Note: its Highly Recommend to activate fastboot mode on LG L90 so you could reach your device in every case....

    THX Phil3759 for the Help here...

    FROM NOW WE FOLLOW AGAIN YUWENGS TUTORIAL FROM POINT: Start Building it !



    THX yuweng ;)
    4
    Reserved

    Case Study
    Qualcomm

    Qualcomm SoC has the best cm support so typically you can find all infos there.

    When you use mkvendor.sh to unpack HTC One M8 all the necessary files are auto-generated correctly.

    Below is the BoardConfig.mk auto-generated by mkvendor.sh
    Code:
    USE_CAMERA_STUB := true
    
    # inherit from the proprietary version
    -include vendor/HTC/One/BoardConfigVendor.mk
    
    TARGET_ARCH := arm
    TARGET_NO_BOOTLOADER := true
    TARGET_BOARD_PLATFORM := unknown
    TARGET_CPU_ABI := armeabi-v7a
    TARGET_CPU_ABI2 := armeabi
    TARGET_ARCH_VARIANT := armv7-a-neon
    TARGET_CPU_VARIANT := cortex-a7
    TARGET_CPU_SMP := true
    ARCH_ARM_HAVE_TLS_REGISTER := true
    
    TARGET_BOOTLOADER_BOARD_NAME := One
    
    [COLOR="blue"]BOARD_KERNEL_CMDLINE := console=ttyHSL0,115200,n8 androidboot.hardware=qcom user_debug=31 ehci-hcd.park=3
    BOARD_KERNEL_BASE := 0x00000000
    BOARD_KERNEL_PAGESIZE := 2048[/COLOR]
    
    # fix this up by examining /proc/mtd on a running device
    BOARD_BOOTIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_FLASH_BLOCK_SIZE := 131072
    
    TARGET_PREBUILT_KERNEL := device/HTC/One/kernel
    
    BOARD_HAS_NO_SELECT_BUTTON := true

    You'll notice it has the same config as here

    mkvendor.sh will also correctly extract the recovery.fstab from M8 recovery.img too
    Code:
    # Android fstab file.
    #<src>	<mnt_point>	<type>	<mnt_flags>	<fs_mgr_flags>
    # The filesystem that contains the filesystem checker binary (typically /system) cannot
    # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
    
    /dev/block/mmcblk0p42                           /boot           emmc    defaults                                                                    defaults
    /dev/block/mmcblk0p43                           /recovery       emmc    defaults                                                                    defaults
    /dev/block/mmcblk0p45                           /system         ext4    ro,seclabel,noatime,data=ordered                                            wait
    /dev/block/platform/msm_sdcc.1/by-name/userdata /data           ext4    rw,seclabel,nosuid,nodev,relatime,discard,noauto_da_alloc,data=ordered      wait,check
    /dev/block/mmcblk0p46                           /cache          ext4    rw,seclabel,nosuid,nodev,relatime,data=ordered                              wait,check 
    /dev/block/mmcblk0p39                           /devlog         ext4    rw,seclabel,nosuid,nodev,relatime,errors=continue,data=ordered              wait
    /dev/block/mmcblk0p27                           /fataldevlog    ext4    rw,seclabel,nosuid,nodev,relatime,errors=continue,data=ordered              wait 
    /dev/block/platform/msm_sdcc.1/by-name/radio    /firmware/radio vfat    ro,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro wait
    /dev/block/platform/msm_sdcc.1/by-name/adsp     /firmware/adsp  vfat    ro,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro wait
    /dev/block/platform/msm_sdcc.1/by-name/wcnss    /firmware/wcnss vfat    ro,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro wait
    /dev/block/mmcblk0p22                           /custdata       ext4    rw,seclabel,nosuid,nodev,relatime,data=ordered defaults
    
    /devices/msm_sdcc.2/mmc_host  auto    auto    defaults    voldmanaged=sdcard1:auto
    /devices/platform/xhci-hcd    auto    auto    defaults    voldmanaged=usb:auto
    So compare between both & make the necessary updates, AFAIK, you don't need to include all the other build flags, those are for building ROMs/ kernels, just update the correct TARGET_CPU_VARIANT & PhilZ Touch build flags will do & if it doesn't boot then you'll have to find that out yourself . . . :laugh:

    HTC One M8 recovery.img from here
    Broadcom

    Recently got a request for building PhilZ Touch for Lava Magnum X604 which uses Broadcom BCM23550 & there isn't much development on this SoC even thought its released on 2012 !

    A quick search found Samsung Galaxy Grand Neo uses the same SoC & it doesn't have cm device tree.

    AKA GT-I9060 & further search found this & it leads to few more . . . (1) (2) (3)

    Above shall give some hint on how to build PhilZ Touch on your BCM23550.

    Below are the mkvendor.sh generated files that needs editing.

    BoardConfig.mk
    Code:
    USE_CAMERA_STUB := true
    
    # inherit from the proprietary version
    -include vendor/Magnum/X604/BoardConfigVendor.mk
    
    TARGET_ARCH := arm
    TARGET_NO_BOOTLOADER := true
    TARGET_BOARD_PLATFORM := unknown [COLOR="Red"]<- Optionally, you can rename accordingly to [COLOR="Blue"]default.prop -> ro.board.platform=[B][COLOR="Black"]java[/COLOR][/B][/COLOR][/COLOR]
    TARGET_CPU_ABI := armeabi-v7a
    TARGET_CPU_ABI2 := armeabi
    TARGET_ARCH_VARIANT := armv7-a-neon
    TARGET_CPU_VARIANT := cortex-a7
    TARGET_CPU_SMP := true
    ARCH_ARM_HAVE_TLS_REGISTER := true
    
    TARGET_BOOTLOADER_BOARD_NAME := X604
    
    BOARD_KERNEL_CMDLINE := 
    BOARD_KERNEL_BASE := 0x10000000
    BOARD_KERNEL_PAGESIZE := 2048
    
    # fix this up by examining /proc/mtd on a running device
    BOARD_BOOTIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x105c0000
    BOARD_FLASH_BLOCK_SIZE := 131072
    
    TARGET_PREBUILT_KERNEL := device/Magnum/X604/kernel
    
    BOARD_HAS_NO_SELECT_BUTTON := true
    
    [COLOR="Blue"]#Philz Touch build flags for Magnum X604[/COLOR]
    TARGET_COMMON_NAME := Magnum X604
    [COLOR="red"]#[/COLOR]BOARD_USE_NTFS_3G := false [COLOR="Blue"]<- if it doesn't boot then remove [COLOR="red"]#[/COLOR] remark[/COLOR]
    [COLOR="Red"]#[/COLOR]TARGET_RECOVERY_PIXEL_FORMAT := "BGRA_8888" [COLOR="Blue"]<- if distorted graphics then remove [COLOR="red"]#[/COLOR] remark[/COLOR]
    TARGET_SCREEN_HEIGHT := 1280
    TARGET_SCREEN_WIDTH := 720
    TARGET_USE_CUSTOM_LUN_FILE_PATH := "/sys/devices/platform/usb_mass_storage/lun0/file"
    BRIGHTNESS_SYS_FILE := "/sys/class/leds/lcd-backlight/brightness"

    recovery.fstab
    Code:
    # Android fstab file.
    #<src>                                                  <mnt_point>         <type>    <mnt_flags and options>                              <fs_mgr_flags>
    # The filesystem that contains the filesystem checker binary (typically /system) cannot
    # specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
    
    [COLOR="blue"]#Init[/COLOR]
    /dev/block/platform/sdhci.1/by-name/boot      /boot	emmc  defaults defaults
    /dev/block/platform/sdhci.1/by-name/recovery  /recovery emmc  defaults defaults
    /dev/block/platform/sdhci.1/by-name/system    /system   ext4  ro                                                   wait
    /dev/block/platform/sdhci.1/by-name/cache     /cache    ext4  noatime,nosuid,nodev,nomblk_io_submit,errors=panic   wait
    /dev/block/platform/sdhci.1/by-name/userdata  /data     ext4  rw,nosuid,nodev,noatime,errors=panic,user_xattr,barrier=1,data=ordered,noauto_da_alloc wait,encryptable=footer
    /dev/block/zram0    none   swap   defaults   zramsize=201326592
    
    [COLOR="Blue"]#voldmanaged[/COLOR]
    /devices/platform/sdhci.1/mmc_host/mmc0  auto vfat  defaults noemulatedsd,nonremovable,voldmanaged=sdcard0:auto
    /devices/platform/sdhci.0/mmc_host/mmc2  auto vfat  defaults voldmanaged=sdcard1:auto
    /devices/platform/3f120000.usb-otg/usb1  auto vfat  defaults voldmanaged=usbdisk0:auto

    device_X604.mk
    Code:
    $(call inherit-product, $(SRC_TARGET_DIR)/product/languages_full.mk)
    
    # The gps config appropriate for this device
    [COLOR="Red"]#[/COLOR]$(call inherit-product, device/common/gps/gps_us_supl.mk)
    
    $(call inherit-product-if-exists, vendor/Magnum/X604/X604-vendor.mk)
    
    DEVICE_PACKAGE_OVERLAYS += device/Magnum/X604/overlay
    
    LOCAL_PATH := device/Magnum/X604
    ifeq ($(TARGET_PREBUILT_KERNEL),)
    	LOCAL_KERNEL := $(LOCAL_PATH)/kernel
    else
    	LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
    endif
    
    PRODUCT_COPY_FILES += \
        $(LOCAL_KERNEL):kernel
    
    $(call inherit-product, build/target/product/full.mk)
    
    PRODUCT_BUILD_PROP_OVERRIDES += BUILD_UTC_DATE=0
    PRODUCT_NAME := full_X604
    PRODUCT_DEVICE := X604
    
    [COLOR="Blue"]#PhilZ Touch[/COLOR]
    PRODUCT_COPY_FILES += 
        $(LOCAL_PATH)/recovery.fstab:recovery/root/[COLOR="blue"]fstab.java[/COLOR]

    Follow necessary steps at post #1 & #2 & you shall be able to build PhilZ Touch . . . :fingers-crossed:
    Intel x86

    To build PhilZ Touch for Atom using this Part-Source will require one additional project.
    Code:
    grep -v linux-x86/x86/i686-linux-android-4.7 ~/Documents/x>~/Documents/x.tmp;mv ~/Documents/x.tmp ~/Documents/x
    Add the above to Line 82 of the Part-Source script. Below are the changes to BoardConfig.mk for building on x86 target
    Code:
    TARGET_ARCH := [COLOR="blue"]x86[/COLOR]
    TARGET_NO_BOOTLOADER := true
    TARGET_BOARD_PLATFORM := unknown [COLOR="Red"]<- Optionally, you can rename accordingly to [COLOR="Blue"]default.prop -> ro.board.platform[/COLOR][/COLOR]
    TARGET_CPU_ABI := armeabi-v7a
    TARGET_CPU_ABI2 := armeabi
    TARGET_ARCH_VARIANT := [COLOR="blue"]x86-atom[/COLOR]
    TARGET_CPU_VARIANT := [COLOR="blue"]x86[/COLOR]
    TARGET_CPU_SMP := true
    ARCH_ARM_HAVE_TLS_REGISTER := true
    Source 1 <- For ref, you don't need to do all that on BBQLinux . . . :cool:
    Source 2


    4
    D
    Deleted member 5186178
    Hello,
    I'm trying to compile Philz Touch recovery for my Samsung S7582. I've done all the passages, and verified them many times, but the script blocks always at the same point.

    When I try to do
    Code:
    lunch cm_S7582-eng
    in bbqlinux terminal, it shows me this error:
    Code:
    build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.
    Device S7582 not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
    Repository for S7582 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/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.
    
    ** Don't have a product spec for: 'cm_S7582'
    ** Do you have the right repo manifest?

    After this error, I tried to do
    Code:
    make -j8 recoveryimage
    but i give
    Code:
    build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/Samsung/S7582/cm.mk]]: "vendor/cm/config/gsm.mk" does not exist.  Stop.

    Please, can someone tells me what I done wrong and what is this gsm.mk file?
    Thanks!

    If at lunch command the builder show error finding device and is looking for it on github, then you need a sh file in your device tree to add the device to lunch list.
    vendorsetup.sh which contain a line like this:
    Code:
    add_lunch_combo cm_S7582-eng
    . If you have this one, next time you will do
    Code:
    . /build/envsetup.sh
    it will be listed on lunch commands list, and on lunch command it won't be that error anymore.
    Other thing is that you have a line in your cm.mk file
    Code:
    $(call inherit-product, vendor/cm/config/gsm.mk)
    which doesn't work because maybe you have an incomplete building folder. Try to delete /vendor/cm folder and do a repo sync again. Anyway that line is from template device folder and that file gsm.mk it points to is blank (empty). It's safe to be deleted - the line I mean.
    I see you use -j8... probably you have a six core CPU at least :good: