Jump to content

Build from source, kernel/aosp


Guest pajn

Recommended Posts

I have installed the depends from http://source.android.com/download except sun-java5-jdk as it's not available on Ubuntu 10.04, but shouldn't be recurred when building the kernel. If so, does somebody know where I can find it?

I would like to build the kernel with my personal modifications. The problem is that I gets errors when compiling, does I need to do anything additional before compiling? edit some source or Makefile?

Is it even possible to build a kernel an install it like on the computer? If not, what could I do instead? Does I need to compile a whole rom from aosp?

Link to comment
Share on other sites

I have installed the depends from http://source.android.com/download except sun-java5-jdk as it's not available on Ubuntu 10.04, but shouldn't be recurred when building the kernel. If so, does somebody know where I can find it?

I would like to build the kernel with my personal modifications. The problem is that I gets errors when compiling, does I need to do anything additional before compiling? edit some source or Makefile?

Is it even possible to build a kernel an install it like on the computer? If not, what could I do instead? Does I need to compile a whole rom from aosp?

But you need sun-java5-jdk, java6 is not supported. You found it in Jaunty Jackalope source. Here http://us.archive.ubuntu.com/ubuntu/dists/jaunty/main/

Add this source to Synaptic or to your package handler and install it.

What errors have you?

Edited by csics5
Link to comment
Share on other sites

Thanks, now sun-java5-jdk (and dependences) is installed.

Build error:

rasmus@rasmus-desktop:~/Hämtningar/kernel$ make

  CHK	 include/linux/version.h

  CHK	 include/linux/utsrelease.h

  SYMLINK include/asm -> include/asm-x86

  CALL	scripts/checksyscalls.sh

  CC	  init/main.o

cc1: warnings being treated as errors

init/main.c: In function ‘start_kernel’:

init/main.c:558: error: format not a string literal and no format arguments

make[1]: *** [init/main.o] Fel 1

make: *** [init] Fel 2

Link to comment
Share on other sites

Thanks, now sun-java5-jdk (and dependences) is installed.

Build error:

rasmus@rasmus-desktop:~/Hämtningar/kernel$ make

  CHK	 include/linux/version.h

  CHK	 include/linux/utsrelease.h

  SYMLINK include/asm -> include/asm-x86

  CALL	scripts/checksyscalls.sh

  CC	  init/main.o

cc1: warnings being treated as errors

init/main.c: In function ‘start_kernel’:

init/main.c:558: error: format not a string literal and no format arguments

make[1]: *** [init/main.o] Fel 1

make: *** [init] Fel 2

This is a Liquid Kernel or the AOSP Kernel? You need a cross compiler because of ARM architecture.

You need to call make something like this.

I'm in kernel directory.

make ARCH=arm CROSS_COMPILE=~/mydroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi-

Modify the path as your machine.

I use this way.

In the directory where you call "make" create a .config file. This .config file sets many default values for you.

I don't compile the general source just Liquid specific kernel.

In general way see this.

http://honeypod.blogspot.com/2007/12/compi...rom-source.html

Sadly I found some errors while compile the Liquid Source. I could modify the code but I don't understand how could compile this by Acer.

It is possible that I misconfigured something. I'm seeking this...

Link to comment
Share on other sites

Sadly I found some errors while compile the Liquid Source. I could modify the code but I don't understand how could compile this by Acer.

It is possible that I misconfigured something. I'm seeking this...

Same here, when i solve one, another appear...

Link to comment
Share on other sites

Same here, when i solve one, another appear...

Found something!

Kernel is compiling....

Stay tuned.

EDIT:

:)

No success.....

Edited by csics5
Link to comment
Share on other sites

I'm trying to build the acer kernel source. And uses the config in arch/arm/configs/acer-q8k-a1-dvt_defconfig

When using the guide in vache's link I get this errors:

rasmus@rasmus-desktop:~/Hämtningar/kernel$ make

  CHK	 include/linux/version.h

  CHK	 include/linux/utsrelease.h

  SYMLINK include/asm -> include/asm-x86

  CC	  kernel/bounds.s

cc1: error: unrecognized command line option "-m64"

cc1: error: unrecognized command line option "-mno-red-zone"

cc1: error: unrecognized command line option "-mcmodel=kernel"

cc1: error: unrecognized command line option "-maccumulate-outgoing-args"

make[1]: *** [kernel/bounds.s] Fel 1

make: *** [prepare0] Fel 2

Using arm2009q3, downloading arm2007q3 now.

@csics5 The line

make ARCH=arm CROSS_COMPILE=~/mydroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi-

is it just to not need to set CROSS_COMPILE in the makefile?

EDIT: Got it to start build but now i think I have the same problems as you... The code won't build...

Edited by pajn
Link to comment
Share on other sites

I'm trying to build the acer kernel source. And uses the config in arch/arm/configs/acer-q8k-a1-dvt_defconfig

When using the guide in vache's link I get this errors:

rasmus@rasmus-desktop:~/Hämtningar/kernel$ make

  CHK	 include/linux/version.h

  CHK	 include/linux/utsrelease.h

  SYMLINK include/asm -> include/asm-x86

  CC	  kernel/bounds.s

cc1: error: unrecognized command line option "-m64"

cc1: error: unrecognized command line option "-mno-red-zone"

cc1: error: unrecognized command line option "-mcmodel=kernel"

cc1: error: unrecognized command line option "-maccumulate-outgoing-args"

make[1]: *** [kernel/bounds.s] Fel 1

make: *** [prepare0] Fel 2

Using arm2009q3, downloading arm2007q3 now.

@csics5 The line

make ARCH=arm CROSS_COMPILE=~/mydroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi-

is it just to not need to set CROSS_COMPILE in the makefile?

Not MUST, but you could put in the makefile also.

Link to comment
Share on other sites

Damn :) :

  CC	  drivers/media/video/msm/msm_vfe8x.o

cc1: warnings being treated as errors

drivers/media/video/msm/msm_vfe8x.c: In function 'vfe_proc_general':

drivers/media/video/msm/msm_vfe8x.c:481: error: the frame size of 1784 bytes is larger than 1024 bytes

make[4]: *** [drivers/media/video/msm/msm_vfe8x.o] Erreur 1

make[3]: *** [drivers/media/video/msm] Erreur 2

make[2]: *** [drivers/media/video] Erreur 2

make[1]: *** [drivers/media] Erreur 2

make: *** [drivers] Erreur 2

Link to comment
Share on other sites

Damn :D :

  CC	  drivers/media/video/msm/msm_vfe8x.o

cc1: warnings being treated as errors

drivers/media/video/msm/msm_vfe8x.c: In function 'vfe_proc_general':

drivers/media/video/msm/msm_vfe8x.c:481: error: the frame size of 1784 bytes is larger than 1024 bytes

make[4]: *** [drivers/media/video/msm/msm_vfe8x.o] Erreur 1

make[3]: *** [drivers/media/video/msm] Erreur 2

make[2]: *** [drivers/media/video] Erreur 2

make[1]: *** [drivers/media] Erreur 2

make: *** [drivers] Erreur 2

CC drivers/media/video/msm/msm_camera.o

cc1: warnings being treated as errors

drivers/media/video/msm/msm_camera.c: In function 'msm_ioctl_config':

drivers/media/video/msm/msm_camera.c:804: error: 'region.fd' may be used uninitialized in this function

drivers/media/video/msm/msm_camera.c:804: note: 'region.fd' was declared here

drivers/media/video/msm/msm_camera.c:804: error: 'region.cbcr_off' may be used uninitialized in this function

drivers/media/video/msm/msm_camera.c:804: note: 'region.cbcr_off' was declared here

drivers/media/video/msm/msm_camera.c:804: error: 'region.y_off' may be used uninitialized in this function

drivers/media/video/msm/msm_camera.c:804: note: 'region.y_off' was declared here

drivers/media/video/msm/msm_camera.c:804: error: 'region.vaddr' may be used uninitialized in this function

drivers/media/video/msm/msm_camera.c:804: note: 'region.vaddr' was declared here

make[4]: *** [drivers/media/video/msm/msm_camera.o] Error 1

make[3]: *** [drivers/media/video/msm] Error 2

make[2]: *** [drivers/media/video] Error 2

make[1]: *** [drivers/media] Error 2

make: *** [drivers] Error 2

:)

I don't understand this....

EDIT:

Modified the code. Now same error like you.. B)

Edited by csics5
Link to comment
Share on other sites

CC drivers/media/video/msm/msm_camera.o

cc1: warnings being treated as errors

drivers/media/video/msm/msm_camera.c: In function 'msm_ioctl_config':

drivers/media/video/msm/msm_camera.c:804: error: 'region.fd' may be used uninitialized in this function

drivers/media/video/msm/msm_camera.c:804: note: 'region.fd' was declared here

drivers/media/video/msm/msm_camera.c:804: error: 'region.cbcr_off' may be used uninitialized in this function

drivers/media/video/msm/msm_camera.c:804: note: 'region.cbcr_off' was declared here

drivers/media/video/msm/msm_camera.c:804: error: 'region.y_off' may be used uninitialized in this function

drivers/media/video/msm/msm_camera.c:804: note: 'region.y_off' was declared here

drivers/media/video/msm/msm_camera.c:804: error: 'region.vaddr' may be used uninitialized in this function

drivers/media/video/msm/msm_camera.c:804: note: 'region.vaddr' was declared here

make[4]: *** [drivers/media/video/msm/msm_camera.o] Error 1

make[3]: *** [drivers/media/video/msm] Error 2

make[2]: *** [drivers/media/video] Error 2

make[1]: *** [drivers/media] Error 2

make: *** [drivers] Error 2

:)

I don't understand this....

EDIT:

Modified the code. Now same error like you.. B)

By default, warning message will be treaterd as error and compilation will stop. If you want to be able to compile even inf there is warning do this :

Edit Makefile

HOSTCFLAGS = -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer ==> remove -Wall

KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \ ==> remove -Wall

make

recompile

Link to comment
Share on other sites

How to solve this? Seems like you have passed it

cc1: warnings being treated as errors

arch/arm/mach-msm/keypad-acer-a1.c:42: warning: initialization from incompatible pointer type

arch/arm/mach-msm/keypad-acer-a1.c: In function 'keypad_gpio_event_input_func':

arch/arm/mach-msm/keypad-acer-a1.c:81: warning: passing argument 1 of 'gpio_event_input_func' from incompatible pointer type

make[1]: *** [arch/arm/mach-msm/keypad-acer-a1.o] Fel 1

make: *** [arch/arm/mach-msm] error 2

Link to comment
Share on other sites

By default, warning message will be treaterd as error and compilation will stop. If you want to be able to compile even inf there is warning do this :

Edit Makefile

HOSTCFLAGS = -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer ==> remove -Wall

KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \ ==> remove -Wall

make

recompile

Thanks, but the guys, how are programmers why make code like this?

Why they don't care about this ugly warning,error, etc messages?

Link to comment
Share on other sites

Erf, stop @ the same error even after modifying the Makefile with malez's tip.

Edit : Trying compile after removing -Werror in KBUILD_CFLAGS

Edit2 : Worked

Edited by vache
Link to comment
Share on other sites

Erf, stop @ the same error even after modifying the Makefile with malez's tip.

Edit : Trying compile after removing -Werror in KBUILD_CFLAGS

Edit2 : Worked

Nice, but this is ok?

Edited by csics5
Link to comment
Share on other sites

How to solve this? Seems like you have passed it

cc1: warnings being treated as errors

arch/arm/mach-msm/keypad-acer-a1.c:42: warning: initialization from incompatible pointer type

arch/arm/mach-msm/keypad-acer-a1.c: In function 'keypad_gpio_event_input_func':

arch/arm/mach-msm/keypad-acer-a1.c:81: warning: passing argument 1 of 'gpio_event_input_func' from incompatible pointer type

make[1]: *** [arch/arm/mach-msm/keypad-acer-a1.o] Fel 1

make: *** [arch/arm/mach-msm] error 2

Have you solved it?

Link to comment
Share on other sites

My board-qsd8x50 puts errors:

  CC	  arch/arm/mach-msm/board-qsd8x50.o

arch/arm/mach-msm/board-qsd8x50.c:2338: error: 'msm_bluesleep_device' undeclared here (not in a function)

make[1]: *** [arch/arm/mach-msm/board-qsd8x50.o] Error 1

make: *** [arch/arm/mach-msm] Error 2

Does I missing a dependence or why is 'msm_bluesleep_device' undeclared?

Link to comment
Share on other sites

Yep, it's OK.

  OBJCOPY arch/arm/boot/Image

  Kernel: arch/arm/boot/Image is ready

  AS	  arch/arm/boot/compressed/head.o

  GZIP	arch/arm/boot/compressed/piggy.gz

  AS	  arch/arm/boot/compressed/piggy.o

  CC	  arch/arm/boot/compressed/misc.o

  LD	  arch/arm/boot/compressed/vmlinux

  OBJCOPY arch/arm/boot/zImage

  Kernel: arch/arm/boot/zImage is ready

Link to comment
Share on other sites

My board-qsd8x50 puts errors:

  CC	  arch/arm/mach-msm/board-qsd8x50.o

arch/arm/mach-msm/board-qsd8x50.c:2338: error: 'msm_bluesleep_device' undeclared here (not in a function)

make[1]: *** [arch/arm/mach-msm/board-qsd8x50.o] Error 1

make: *** [arch/arm/mach-msm] Error 2

Does I missing a dependence or why is 'msm_bluesleep_device' undeclared?

Kernel is compiling. I want to wait the compailing.

If completed I could answer your question.

Link to comment
Share on other sites

Yep, it's OK.

  OBJCOPY arch/arm/boot/Image

  Kernel: arch/arm/boot/Image is ready

  AS	  arch/arm/boot/compressed/head.o

  GZIP	arch/arm/boot/compressed/piggy.gz

  AS	  arch/arm/boot/compressed/piggy.o

  CC	  arch/arm/boot/compressed/misc.o

  LD	  arch/arm/boot/compressed/vmlinux

  OBJCOPY arch/arm/boot/zImage

  Kernel: arch/arm/boot/zImage is ready

So just a big breath and put on the phone? :)

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.