building kernel from source got eror - Nexus 7 Q&A, Help & Troubleshooting

[email protected]:~/tegra$ make tegra3_android_defconfig
#
# configuration written to .config
#
[email protected]:~/tegra$ export PATH=$/wonk/arm-eabi-4.7/arm-eabi-/bin:$PATH
[email protected]:~/tegra$ export ARCH=arm
[email protected]:~/tegra$ export SUBARCH=arm
[email protected]:~/tegra$ export CROSS_COMPILE=arm-eabi-
[email protected]:~/tegra$ make
make: arm-eabi-gcc: Command not found
scripts/kconfig/conf --silentoldconfig Kconfig
make: arm-eabi-gcc: Command not found
CHK include/linux/version.h
CHK include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
CC kernel/bounds.s
/bin/sh: 1: arm-eabi-gcc: not found
make[1]: *** [kernel/bounds.s] Error 127
make: *** [prepare0] Error 2
NB : I use toolchain https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.7
what should I do ?

It's supposed to be arm-eabi-4.7/bin/arm-eabi-. Should work then.

cooler1182 said:
[email protected]:~/tegra$ make tegra3_android_defconfig
#
# configuration written to .config
#
[email protected]:~/tegra$ export PATH=$/wonk/arm-eabi-4.7/arm-eabi-/bin:$PATH
[email protected]:~/tegra$ export ARCH=arm
[email protected]:~/tegra$ export SUBARCH=arm
[email protected]:~/tegra$ export CROSS_COMPILE=arm-eabi-
[email protected]:~/tegra$ make
make: arm-eabi-gcc: Command not found
scripts/kconfig/conf --silentoldconfig Kconfig
make: arm-eabi-gcc: Command not found
CHK include/linux/version.h
CHK include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
CC kernel/bounds.s
/bin/sh: 1: arm-eabi-gcc: not found
make[1]: *** [kernel/bounds.s] Error 127
make: *** [prepare0] Error 2
NB : I use toolchain https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.7
what should I do ?
Click to expand...
Click to collapse
I find it easier to put the path to the toolchian in my makefile.
But as sgt.meow said, it has to be whatever/bin/arm-eabi- (or however your toolchain does it)
Make sure it ends in - though because otherwise it will not work

poondog said:
I find it easier to put the path to the toolchian in my makefile.
But as sgt.meow said, it has to be whatever/bin/arm-eabi- (or however your toolchain does it)
Make sure it ends in - though because otherwise it will not work
Click to expand...
Click to collapse
can i see your toolchain path ?
thank before

Your toolchain path should be:
wonk/arm-eabi-4.7/bin/arm-eabi-

cooler1182 said:
can i see your toolchain path ?
thank before
Click to expand...
Click to collapse
sgt. meow said:
Your toolchain path should be:
wonk/arm-eabi-4.7/bin/arm-eabi-
Click to expand...
Click to collapse
Mine might be confusing but here it is
/home/poondog/repos/arm-eabi-4.7/bin/arm-eabi-
What you need to do is navigate to your toolchain in explorer, then to bin and right click anything and go properties. It will tell you the whole path and put that in your makefile (don't forget the arm-eabi-)

Related

[HELP] Android Kernel Building Error. Permission denied :(

Hi every body, i'm now building android kernel for SKY-VEGA-S5 phone ( IM-A840S).
I followed these steps on the homepage of SKY .
They're :
1. How to build Kernel source of UI18760_kernel
a.First, Get Toolchain from android git server and etc ¡Š
GCC correct version is arm-eabi-4.4.3
b.modify Makefile
edit "CROSS_COMPILE" to toolchain path ( You downloaded )
ex) CROSS_COMPILE=$(You Download directory)/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
c.make CONFIG_DEBUG_SECTION_MISMATCH=y ARCH=arm msm8960_ef44s_tp20_defconfig
d.make CONFIG_DEBUG_SECTION_MISMATCH=y ARCH=arm
2. Kernel Image Location is arch/arm/boot/zImage
Module Image Location is drivers/*/*.ko
3. How to Clean Kernel object files
a.make ARCH=arm clean
__________________________________________________ ____________________________________
I downloaded the kernel package and extract to the /home folder.
And toolchain ..... /prebuilt folder is also extracted to the /home folder.
I modified Makefile.
CROSS_COMPILE ?=$/home/vip7009pro/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
Then I step by step followed the guide. But i got many error... ( I think the PATH was wrong, but I dont know how to correctly edit it ==' ).
Here they are :
__________________________________________________ ________________________________________
[email protected]:~/kernel$ make CONFIG_DEBUG_SECTION_MISMATCH=y ARCH=arm
"======================LINUX INCLUDE=========================================== ================"
-I/home/vip7009pro/kernel/arch/arm/include -Iarch/arm/include/generated -Iinclude -include include/generated/autoconf.h
"================================================= ============================================="
"KERNEL ================================================== ===================================="
-Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -DT_EF44S -I ./include/pantech -include ./include/pantech/CUST_PANTECH.h -DFIRM_VER=\"S0215141\" -DSYS_MODEL_NAME=\"EF44S\" -DPANTECH_MODEL_NAME=\"IM-A840S\" -DFS_USER_DATA_VER=37 -DPANTECH_STORAGE_INTERNAL_EMUL -DFEATURE_AARM_RELEASE_MODE -D__KERNELBUILD__
"================================================= ============================================="
CHK include/linux/version.h
CHK include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
CC kernel/bounds.s
/home/vip7009pro/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc -Wp,-MD,kernel/.bounds.s.d -nostdinc -isystem /home/vip7009pro/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc -print-file-name=include [Errno 13] Permission denied -I/home/vip7009pro/kernel/arch/arm/include -Iarch/arm/include/generated -Iinclude -include include/generated/autoconf.h -D__KERNEL__ -mlittle-endian -Iarch/arm/mach-msm/include -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -DT_EF44S -I ./include/pantech -include ./include/pantech/CUST_PANTECH.h -DFIRM_VER="S0215141" -DSYS_MODEL_NAME="EF44S" -DPANTECH_MODEL_NAME="IM-A840S" -DFS_USER_DATA_VER=37 -DPANTECH_STORAGE_INTERNAL_EMUL -DFEATURE_AARM_RELEASE_MODE -D__KERNELBUILD__ -O2 -fstack-protector -mabi=aapcs-linux -mno-thumb-interwork -funwind-tables -D__LINUX_ARM_ARCH__=7 -march=armv5t -Wa,-march=armv7-a -msoft-float -Uarm -fomit-frame-pointer -g -DKBUILD_STR(s)=#s -DKBUILD_BASENAME=KBUILD_STR(bounds) -DKBUILD_MODNAME=KBUILD_STR(bounds) -fverbose-asm -S -o kernel/bounds.s kernel/bounds.c [Errno 13] Permission denied
make[1]: *** [kernel/bounds.s] Error 13
make: *** [prepare0] Error 2
[email protected]:~/kernel$
Probably your toolchain binaries are just not marked executable, try
Code:
chmod 755 /home/vip7009pro/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/*
. If this doesn't help, check whether your kernel source tree is writable to you and that /home is mounted without option "noexec".
Zirias said:
Probably your toolchain binaries are just not marked executable, try
Code:
chmod 755 /home/vip7009pro/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/*
. If this doesn't help, check whether your kernel source tree is writable to you and that /home is mounted without option "noexec".
Click to expand...
Click to collapse
thanks but i got error :
[email protected]:~/kernel$ make CONFIG_DEBUG_SECTION_MISMATCH=y ARCH=arm
"======================LINUX INCLUDE==========================================================="
-I/home/vip7009pro/kernel/arch/arm/include -Iarch/arm/include/generated -Iinclude -include include/generated/autoconf.h
"=============================================================================================="
"KERNEL ======================================================================================"
-Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -DT_EF44S -I ./include/pantech -include ./include/pantech/CUST_PANTECH.h -DFIRM_VER=\"S0215141\" -DSYS_MODEL_NAME=\"EF44S\" -DPANTECH_MODEL_NAME=\"IM-A840S\" -DFS_USER_DATA_VER=37 -DPANTECH_STORAGE_INTERNAL_EMUL -DFEATURE_AARM_RELEASE_MODE -D__KERNELBUILD__
"=============================================================================================="
CHK include/linux/version.h
CHK include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
CC kernel/bounds.s
arm-eabi-gcc: error trying to exec 'cc1': execvp: No such file or directory
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2
[email protected]:~/kernel$
What I have to do now ?
lmgtfy
Seriously, possible causes are quite numerous, you'll have to check your cross toolchain installation and configuration yourself and google is a good reference, good luck...
Zirias said:
lmgtfy
Seriously, possible causes are quite numerous, you'll have to check your cross toolchain installation and configuration yourself and google is a good reference, good luck...
Click to expand...
Click to collapse
Thank you for your help. I fixed these error, but others error appear =='
The kernel was compiling, but suddenly stop with this error , help me please :
_______________________________________________________________________
CC drivers/media/video/msm/sensors/sensor_i2c.o
CC drivers/media/video/msm/sensors/sensor_ctrl.o
LD drivers/media/video/msm/sensors/built-in.o
CC drivers/media/video/msm/wfd/mdp-subdev.o
CC drivers/media/video/msm/wfd/enc-subdev.o
CC drivers/media/video/msm/wfd/vsg-subdev.o
CC drivers/media/video/msm/wfd/wfd-ioctl.o
CC drivers/media/video/msm/wfd/wfd-util.o
LD drivers/media/video/msm/wfd/built-in.o
CC drivers/media/video/msm/msm_axi_qos.o
CC drivers/media/video/msm/flash.o
CC drivers/media/video/msm/msm_io_8960.o
CC drivers/media/video/msm/msm_vfe32.o
CC drivers/media/video/msm/msm_vpe.o
LD drivers/media/video/msm/built-in.o
CC drivers/media/video/uvc/uvc_driver.o
CC drivers/media/video/uvc/uvc_queue.o
CC drivers/media/video/uvc/uvc_v4l2.o
CC drivers/media/video/uvc/uvc_video.o
CC drivers/media/video/uvc/uvc_ctrl.o
CC drivers/media/video/uvc/uvc_status.o
CC drivers/media/video/uvc/uvc_isight.o
LD drivers/media/video/uvc/uvcvideo.o
LD drivers/media/video/uvc/built-in.o
LD drivers/media/video/built-in.o
LD drivers/media/built-in.o
CC drivers/mfd/mfd-core.o
CC drivers/mfd/wcd9310-core.o
CC drivers/mfd/wcd9310-irq.o
CC drivers/mfd/pm8921-core.o
drivers/mfd/pm8921-core.c:207: error: resources_pwrkey causes a section type conflict
drivers/mfd/pm8921-core.c:207: error: resources_pwrkey causes a section type conflict
drivers/mfd/pm8921-core.c:161: error: adc_cell_resources causes a section type conflict
drivers/mfd/pm8921-core.c:161: error: adc_cell_resources causes a section type conflict
make[2]: *** [drivers/mfd/pm8921-core.o] Error 1
make[1]: *** [drivers/mfd] Error 2
make: *** [drivers] Error 2
real 9m4.940s
user 8m6.010s
sys 0m33.994s
[email protected]:~/kernel$

[HELP]CM 12 Compiling SEpolcy ERROR!.

So i downloaded the repo of CM12 and tried to compile it for the jflte and this error related to SEpolicy appeared:
Code:
Export includes file: device/samsung/jf-common/gps/core/Android.mk -- /home/diego/cm11/out/target/product/jflte/obj/SHARED_LIBRARIES/libloc_core_intermediates/export_includes
Export includes file: device/samsung/jf-common/gps/loc_api/libloc_api_50001/Android.mk -- /home/diego/cm11/out/target/product/jflte/obj/SHARED_LIBRARIES/libloc_eng_intermediates/export_includes
Export includes file: device/samsung/jf-common/gps/loc_api/libloc_api_50001/Android.mk -- /home/diego/cm11/out/target/product/jflte/obj/SHARED_LIBRARIES/gps.msm8960_intermediates/export_includes
drivers/media/video/msm-jf/Kconfig:114:warning: choice value used outside its choice group
drivers/media/video/msm/Kconfig:108:warning: choice value used outside its choice group
drivers/media/video/msm-jf/Kconfig:119:warning: choice value used outside its choice group
drivers/media/video/msm/Kconfig:113:warning: choice value used outside its choice group
Export includes file: device/samsung/jf-common/liblights/Android.mk -- /home/diego/cm11/out/target/product/jflte/obj/SHARED_LIBRARIES/lights.msm8960_intermediates/export_includes
Notice file: device/samsung/jf-common/liblights/NOTICE -- /home/diego/cm11/out/target/product/jflte/obj/NOTICE_FILES/src//system/lib/hw/lights.msm8960.so.txt
#
# configuration written to .config
#
make[1]: Leaving directory '/home/diego/cm11/kernel/samsung/jf'
Symlink: /home/diego/cm11/out/target/product/jflte/recovery/root/sbin/fsck.exfat -> mount.exfat
Symlink: /home/diego/cm11/out/target/product/jflte/recovery/root/sbin/mkfs.exfat -> mount.exfat
APK certs list: /home/diego/cm11/out/target/product/jflte/obj/PACKAGING/apkcerts_intermediates/cm_jflte-apkcerts-1919d07bf0.txt
make -C kernel/samsung/jf O=/home/diego/cm11/out/target/product/jflte/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE=" /home/diego/cm11/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-" headers_install
make[1]: Entering directory '/home/diego/cm11/kernel/samsung/jf'
target Prebuilt: fstab.qcom (/home/diego/cm11/out/target/product/jflte/obj/ETC/fstab.qcom_intermediates/fstab.qcom)
/home/diego/cm11/out/host/linux-x86/bin/checkpolicy: loading policy configuration from /home/diego/cm11/out/target/product/jflte/obj/ETC/sepolicy_intermediates/policy.conf
Import includes file: /home/diego/cm11/out/target/product/jflte/obj/EXECUTABLES/init_intermediates/import_includes
device/samsung/jf-common/sepolicy/device.te:3:ERROR 'duplicate declaration of type/attribute' at token ';' on line 11146:
type gpu_device, dev_type;
# GPU (used by most UI apps)
checkpolicy: error(s) encountered while parsing configuration
external/sepolicy/Android.mk:121: recipe for target '/home/diego/cm11/out/target/product/jflte/obj/ETC/sepolicy_intermediates/sepolicy' failed
make: *** [/home/diego/cm11/out/target/product/jflte/obj/ETC/sepolicy_intermediates/sepolicy] Error 1
make: *** Waiting for unfinished jobs....
CHK include/linux/version.h
make[1]: Leaving directory '/home/diego/cm11/kernel/samsung/jf'
# In case value of PACKAGES is empty.
What can i do to fix it?
GrStorm said:
So i downloaded the repo of CM12 and tried to compile it for the jflte and this error related to SEpolicy appeared:
Code:
Export includes file: device/samsung/jf-common/gps/core/Android.mk -- /home/diego/cm11/out/target/product/jflte/obj/SHARED_LIBRARIES/libloc_core_intermediates/export_includes
Export includes file: device/samsung/jf-common/gps/loc_api/libloc_api_50001/Android.mk -- /home/diego/cm11/out/target/product/jflte/obj/SHARED_LIBRARIES/libloc_eng_intermediates/export_includes
Export includes file: device/samsung/jf-common/gps/loc_api/libloc_api_50001/Android.mk -- /home/diego/cm11/out/target/product/jflte/obj/SHARED_LIBRARIES/gps.msm8960_intermediates/export_includes
drivers/media/video/msm-jf/Kconfig:114:warning: choice value used outside its choice group
drivers/media/video/msm/Kconfig:108:warning: choice value used outside its choice group
drivers/media/video/msm-jf/Kconfig:119:warning: choice value used outside its choice group
drivers/media/video/msm/Kconfig:113:warning: choice value used outside its choice group
Export includes file: device/samsung/jf-common/liblights/Android.mk -- /home/diego/cm11/out/target/product/jflte/obj/SHARED_LIBRARIES/lights.msm8960_intermediates/export_includes
Notice file: device/samsung/jf-common/liblights/NOTICE -- /home/diego/cm11/out/target/product/jflte/obj/NOTICE_FILES/src//system/lib/hw/lights.msm8960.so.txt
#
# configuration written to .config
#
make[1]: Leaving directory '/home/diego/cm11/kernel/samsung/jf'
Symlink: /home/diego/cm11/out/target/product/jflte/recovery/root/sbin/fsck.exfat -> mount.exfat
Symlink: /home/diego/cm11/out/target/product/jflte/recovery/root/sbin/mkfs.exfat -> mount.exfat
APK certs list: /home/diego/cm11/out/target/product/jflte/obj/PACKAGING/apkcerts_intermediates/cm_jflte-apkcerts-1919d07bf0.txt
make -C kernel/samsung/jf O=/home/diego/cm11/out/target/product/jflte/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE=" /home/diego/cm11/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-" headers_install
make[1]: Entering directory '/home/diego/cm11/kernel/samsung/jf'
target Prebuilt: fstab.qcom (/home/diego/cm11/out/target/product/jflte/obj/ETC/fstab.qcom_intermediates/fstab.qcom)
/home/diego/cm11/out/host/linux-x86/bin/checkpolicy: loading policy configuration from /home/diego/cm11/out/target/product/jflte/obj/ETC/sepolicy_intermediates/policy.conf
Import includes file: /home/diego/cm11/out/target/product/jflte/obj/EXECUTABLES/init_intermediates/import_includes
device/samsung/jf-common/sepolicy/device.te:3:ERROR 'duplicate declaration of type/attribute' at token ';' on line 11146:
type gpu_device, dev_type;
# GPU (used by most UI apps)
checkpolicy: error(s) encountered while parsing configuration
external/sepolicy/Android.mk:121: recipe for target '/home/diego/cm11/out/target/product/jflte/obj/ETC/sepolicy_intermediates/sepolicy' failed
make: *** [/home/diego/cm11/out/target/product/jflte/obj/ETC/sepolicy_intermediates/sepolicy] Error 1
make: *** Waiting for unfinished jobs....
CHK include/linux/version.h
make[1]: Leaving directory '/home/diego/cm11/kernel/samsung/jf'
# In case value of PACKAGES is empty.
What can i do to fix it?
Click to expand...
Click to collapse
See this http://review.cyanogenmod.org/#/c/77008/
Will also need this once you hit the camera error
http://review.cyanogenmod.org/#/c/77026/
Thanks man, the DO NOT MERGE warning made me ignore this.
Sent from my GT-I9505 using XDA Free mobile app

[Q] problem with building kernel[solved]

Hi every one I have a problem with compiling zImage of a3000 kernel so i enter these coomands:
Code:
export TARGET_BUILD_VARIANT=eng TARGET_PRODUCT=a3000_prc_3gfull MTK_ROOT_CUSTOM=/mediatek/custom/ TARGET_KERNEL_VERSION=3.4.5 &&export PATH=arm-eabi-linaro-4.6.2/bin/:$PATH&&export CROSS_COMPILE=arm-eabi-&&export ARCH=arm
then for setup:
Code:
make menuconfigscripts/kconfig/mconf Kconfig
*** End of the configuration.
*** Execute 'make' to start the build or try 'make help'.
I don't touch configurations.
problem is here
Code:
[B][SIZE="4"][U]make zImage[/U][/SIZE][/B]
CHK include/linux/version.h
CHK include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
CC arch/arm/kernel/asm-offsets.s
In file included from include/linux/timex.h:174:0,
from include/linux/sched.h:57,
from arch/arm/kernel/asm-offsets.c:13:
[B][U][SIZE="4"][COLOR="black"][COLOR="Red"]/media/***/****/kernel/arch/arm/include/asm/timex.h:15:24: fatal error: mach/timex.h: No such file or directory
compilation terminated.
make[1]: *** [arch/arm/kernel/asm-offsets.s] Error 1
make: *** [prepare0] Error 2[/COLOR][/COLOR][/SIZE][/U][/B]

OmniROM 6.0 build error for Pixel C

General information:
1. I can't found the kernel source from android.com and android source repos.
2. I was setup build environment for OmniROM, and I was tested build manta with success.
3. I was config the device repo in .repo/local_manifests/default.xml with https://android.googlesource.com/device/google/dragon/ and https://android.googlesource.com/device/google/dragon-kernel/
4. Changed all aosp_dragon to omni_dragon, add TWRP config to BoardConfig.mk, add TARGET_PREBUILT_KERNEL := device/google/dragon-kernel/Image.fit to device.mk
5. Download and extract vendor file from https://developers.google.com/android/nexus/drivers#dragon using MXC14G version.
6. Modified tools/roomservice.py for disabled check dragon online.(Make it compile)
My build step:
cmd:
cd /media/dev/source/OmniROM/
brunch dragon
Wait for complete, it report error:
Code:
Export includes file: external/tinycompress/Android.mk -- /media/dev/source/OmniROM/out/target/product/dragon/obj_arm/SHARED_LIBRARIES/libtinycompress_intermediates/export_includes
make: *** No rule to make target '/media/dev/source/OmniROM/out/target/product/dragon/obj/KERNEL_OBJ/usr', needed by '/media/dev/source/OmniROM/out/target/product/dragon/obj_arm/SHARED_LIBRARIES/libtinycompress_intermediates/compress.o'
The full log in http://pastebin.com/drM6Fe2R
I tried build the external/tinycompress package only, it return error.
cmd:
mm external/tinycompress
Report error:
Code:
No private recovery resources for TARGET_DEVICE dragon
build/core/tasks/kernel.mk:104: ***************************************************************
build/core/tasks/kernel.mk:105: * Using prebuilt kernel binary instead of source *
build/core/tasks/kernel.mk:106: * THIS IS DEPRECATED, AND WILL BE DISCONTINUED *
build/core/tasks/kernel.mk:107: * Please configure your device to download the kernel *
build/core/tasks/kernel.mk:108: * source repository to kernel/google/dragon
build/core/tasks/kernel.mk:109: * See http://forum.xda-developers.com/wiki/ROM/Integrated_Kernel_Build
build/core/tasks/kernel.mk:110: * for more information *
build/core/tasks/kernel.mk:111: ***************************************************************
build/core/tasks/kernel.mk:271: warning: overriding recipe for target '/media/dev/source/OmniROM/out/target/product/dragon/kernel'
build/core/Makefile:72: warning: ignoring old recipe for target '/media/dev/source/OmniROM/out/target/product/dragon/kernel'
make: Nothing to be done for 'external/tinycompress'.
The full log in http://pastebin.com/DaHjPmHk
Can't you help me fix this build erro?
kendling said:
General information:
1. I can't found the kernel source from android.com and android source repos.
2. I was setup build environment for OmniROM, and I was tested build manta with success.
3. I was config the device repo in .repo/local_manifests/default.xml with https://android.googlesource.com/device/google/dragon/ and https://android.googlesource.com/device/google/dragon-kernel/
4. Changed all aosp_dragon to omni_dragon, add TWRP config to BoardConfig.mk, add TARGET_PREBUILT_KERNEL := device/google/dragon-kernel/Image.fit to device.mk
5. Download and extract vendor file from https://developers.google.com/android/nexus/drivers#dragon using MXC14G version.
6. Modified tools/roomservice.py for disabled check dragon online.(Make it compile)
My build step:
cmd:
cd /media/dev/source/OmniROM/
brunch dragon
Wait for complete, it report error:
Code:
Export includes file: external/tinycompress/Android.mk -- /media/dev/source/OmniROM/out/target/product/dragon/obj_arm/SHARED_LIBRARIES/libtinycompress_intermediates/export_includes
make: *** No rule to make target '/media/dev/source/OmniROM/out/target/product/dragon/obj/KERNEL_OBJ/usr', needed by '/media/dev/source/OmniROM/out/target/product/dragon/obj_arm/SHARED_LIBRARIES/libtinycompress_intermediates/compress.o'
The full log in http://pastebin.com/drM6Fe2R
I tried build the external/tinycompress package only, it return error.
cmd:
mm external/tinycompress
Report error:
Code:
No private recovery resources for TARGET_DEVICE dragon
build/core/tasks/kernel.mk:104: ***************************************************************
build/core/tasks/kernel.mk:105: * Using prebuilt kernel binary instead of source *
build/core/tasks/kernel.mk:106: * THIS IS DEPRECATED, AND WILL BE DISCONTINUED *
build/core/tasks/kernel.mk:107: * Please configure your device to download the kernel *
build/core/tasks/kernel.mk:108: * source repository to kernel/google/dragon
build/core/tasks/kernel.mk:109: * See http://forum.xda-developers.com/wiki/ROM/Integrated_Kernel_Build
build/core/tasks/kernel.mk:110: * for more information *
build/core/tasks/kernel.mk:111: ***************************************************************
build/core/tasks/kernel.mk:271: warning: overriding recipe for target '/media/dev/source/OmniROM/out/target/product/dragon/kernel'
build/core/Makefile:72: warning: ignoring old recipe for target '/media/dev/source/OmniROM/out/target/product/dragon/kernel'
make: Nothing to be done for 'external/tinycompress'.
The full log in http://pastebin.com/DaHjPmHk
Can't you help me fix this build erro?
Click to expand...
Click to collapse
I'd look at one of the other Nexus device trees to see how they set up inline kernel build and properly Omni-fied it. I haven't done it in such a long time I don't really remember the exact details.
anyone can help me ?
Code:
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
make[1]: Leaving directory `/home/ibrahim/wave/kernel/samsung/aries'
make -C kernel/samsung/aries O=/home/ibrahim/wave/out/target/product/wave/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE=" "/home/ibrahim/wave/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/"/arm-eabi-" dtbs
make[1]: Entering directory `/home/ibrahim/wave/kernel/samsung/aries'
make[2]: *** No rule to make target `dtbs'. Stop.
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory `/home/ibrahim/wave/kernel/samsung/aries'
make: [TARGET_KERNEL_BINARIES] Error 2 (ignored)
make -C kernel/samsung/aries O=/home/ibrahim/wave/out/target/product/wave/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE=" "/home/ibrahim/wave/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/"/arm-eabi-" modules
make[1]: Entering directory `/home/ibrahim/wave/kernel/samsung/aries'
CHK include/linux/version.h
I did found the problem!!
Because I did add the lines to aosp_dragon.mk below:
Code:
# Inherit from our custom product configuration
$(call inherit-product, vendor/omni/config/common_tablet.mk)
After that, I got new errors:
1. Failed to compile mkbootimg.c
Code:
target C: utility_mkbootimg <= system/core/mkbootimg/mkbootimg.c
system/core/mkbootimg/mkbootimg.c: In function 'print_id':
system/core/mkbootimg/mkbootimg.c:82:5: error: 'for' loop initial declarations are only allowed in C99 or C11 mode
for (unsigned i = 0; i < id_len; i++) {
^
system/core/mkbootimg/mkbootimg.c:82:5: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
build/core/binary.mk:801: recipe for target '/media/dev/source/OmniROM/out/target/product/dragon/obj/UTILITY_EXECUTABLES/utility_mkbootimg_intermediates/mkbootimg.o' failed
make: *** [/media/dev/source/OmniROM/out/target/product/dragon/obj/UTILITY_EXECUTABLES/utility_mkbootimg_intermediates/mkbootimg.o] Error 1
make: *** 正在等待未完成的任务....
2. Failed to compile compress.c
Code:
target thumb C: audio.usb.default_32 <= hardware/libhardware/modules/usbaudio/audio_hal.c
In file included from bionic/libc/include/signal.h:32:0,
from bionic/libc/include/sys/select.h:33,
from bionic/libc/include/unistd.h:35,
from external/tinycompress/compress.c:61:
/media/dev/source/OmniROM/out/target/product/dragon/obj/KERNEL_OBJ/usr/include/asm/sigcontext.h:53:2: error: unknown type name '__uint128_t'
__uint128_t vregs[32];
^
build/core/binary.mk:801: recipe for target '/media/dev/source/OmniROM/out/target/product/dragon/obj_arm/SHARED_LIBRARIES/libtinycompress_intermediates/compress.o' failed
make: *** [/media/dev/source/OmniROM/out/target/product/dragon/obj_arm/SHARED_LIBRARIES/libtinycompress_intermediates/compress.o] Error 1
make: *** 正在等待未完成的任务....
make: *** wait: 没有子进程。 停止。
Anyone can help me?
About __uint128_t problem, do this:
https://github.com/omnirom/android_...mmit/80349b926351ca5992973e4a0357ca649a602faa
Blue59 said:
anyone can help me ?
Code:
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
make[1]: Leaving directory `/home/ibrahim/wave/kernel/samsung/aries'
make -C kernel/samsung/aries O=/home/ibrahim/wave/out/target/product/wave/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE=" "/home/ibrahim/wave/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/"/arm-eabi-" dtbs
make[1]: Entering directory `/home/ibrahim/wave/kernel/samsung/aries'
make[2]: *** No rule to make target `dtbs'. Stop.
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory `/home/ibrahim/wave/kernel/samsung/aries'
make: [TARGET_KERNEL_BINARIES] Error 2 (ignored)
make -C kernel/samsung/aries O=/home/ibrahim/wave/out/target/product/wave/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE=" "/home/ibrahim/wave/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/"/arm-eabi-" modules
make[1]: Entering directory `/home/ibrahim/wave/kernel/samsung/aries'
CHK include/linux/version.h
Click to expand...
Click to collapse
@Blue59
make[2]: *** No rule to make target `dtbs'.
Click to expand...
Click to collapse
The problem is , your kernel's Makefile not have dtbs make rule.
See https://github.com/kendling/android_kernel_google_dragon/blob/m/arch/arm64/Makefile
dtbs: prepare scripts
$(Q)$(MAKE) $(build)=$(boot)/dts
dtbs_install:
$(Q)$(MAKE) $(dtbinst)=$(boot)/dts
Click to expand...
Click to collapse
Hi everybody,
I was fixed all problem and build success.
After build success, the boot.img can't bootup.
Tablet display "OS on your tablet is damaged. Need recovery."
Yes, I fixed it too.
Now my build was all success and success bootup.
I want to release the ROM later.
Thanks all!

OmniRom 6.0.1 error while building help !

anyone help please i cant fix it...
Code:
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
make[1]: Leaving directory `/home/ibrahim/wave/kernel/samsung/aries'
make -C kernel/samsung/aries O=/home/ibrahim/wave/out/target/product/wave/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE=" "/home/ibrahim/wave/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/"/arm-eabi-" dtbs
make[1]: Entering directory `/home/ibrahim/wave/kernel/samsung/aries'
make[2]: *** No rule to make target `dtbs'. Stop.
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory `/home/ibrahim/wave/kernel/samsung/aries'
make: [TARGET_KERNEL_BINARIES] Error 2 (ignored)
make -C kernel/samsung/aries O=/home/ibrahim/wave/out/target/product/wave/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE=" "/home/ibrahim/wave/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/"/arm-eabi-" modules
make[1]: Entering directory `/home/ibrahim/wave/kernel/samsung/aries'
CHK include/linux/version.h

Categories

Resources