ubuntu android 4.1 内核编译

转自http://blog.chinaunix.net/uid-20718384-id-3328899.html


环境:ubuntu 12.04 x64


1. 安装编译环境

  1. sudo apt-get install ncurses-dev git-core gnupg flex bison gperf build-essential \
  2. zip curl libc6-dev x11proto-core-dev \
  3. libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
  4. libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \
  5. python-markdown libxml2-utils xsltproc zlib1g-dev:i386
  6. sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

2. 下载samsung内核源码,checkout jb源码

  1. git clone https://android.googlesource.com/kernel/samsung.git
  2. cd samsung
  3. git branch -a 
  4. git checkout -b android-samsung-3.0-jb origin/android-samsung-3.0-jb
3. 下载android交叉编译链

  1. git clone https://android.googlesource.com/platform/prebuilt
4. 设置交叉编译环境

  1. export PATH=~/android/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin:$PATH
  2. export ARCH=arm
  3. export SUBARCH=arm
  4. export CROSS_COMPILE=arm-eabi-
5. 查看内核版本是否与手机内核版本匹配

  1. cd samsung
  2. make kernelversion
6. 配置内核

  1. make herring_defconfig
  2. make menuconfig #添加其他配置
7. 编译内核

  1. make -j8

8. 内核外部模块makefile

  1. KERNELDIR := /home/android/android/samsung
  2. PWD :=$(shell pwd)
  3. ARCH=arm
  4. CROSS_COMPILE=arm-eabi-
  5. CC=$(CROSS_COMPILE)gcc
  6. LD=$(CROSS_COMPILE)ld
  7. obj-m := hello.o
  8. modules:
  9.     $(MAKE) -C $(KERNELDIR) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) M=$(PWD) modules
  10. clean:
  11.      $(MAKE) -C $(KERNELDIR) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) M=$(PWD) clean
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值