Android底层Linux内核源码编译工具…

本帖最后由 冰火 于 2011-1-6 07:50 编辑

   1. Android的一些有用的官方网站:
          http://android.git.kernel.org   android源码网站
          http://source.android.com      
          http://code.google.com/android
          http://developer.android.com

   2. 安装git源码管理工具


  1. # cd ~
  2. # mkdir bin
  3. # echo $PATH
  4. # curlhttp://android.git.kernel.org/repo> ~/bin/repo
  5. # chmod a+x ~/bin/repo
复制代码




          git下载 源码方法:
          下载一个tree(至当前路径):

  1. # git clone git://git路径  (git路径参看网站发布tree路径)
复制代码


        下载整个platform至当前路径:

  1. # repo init -u git://git路径/platform/manifest.git
  2. # repo sync
复制代码


       3. 获得Android平台源码(具体可参看http://android.git.kernel.org):

  1. # mkdir myandroid
  2. # cd myandroid
  3. # repo init -uhttp://android.git.kernel.org/platform/manifest.git
  4. # repo sync
复制代码


          按默认设置完成即可


     4. 获得S3C6410平台Android底层Linux内核源码

   参考网站:http://github.com/leemgs/samsung-s3c6410-android.1.0/tree/master
      参考主页:http://code.google.com/p/android-group-korea/
      中文社区参考:http://www.android.cc/dev/  http://www.china-android.org
      # git clone git://github.com/leemgs/samsung-s3c6410-android.1.0.git

        5. 获得并安装Android编译工具(Toolchain)

  1. # wgethttp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.12.tar.gz
  2. # ./configure --prefix=/usr/local
  3. # make
  4. # make install
  5. # vi /etc/ld.so.conf
  6.   include ld.so.conf.d/*.conf
  7.   /usr/local/lib
  8. # ldconfig # cd /opt
  9. # wgethttp://www.kandroid.org/devtools/kandroid-1.1.2.1-20080530.glibc.tgz
  10. # tar xvzf kandroid-arm-toolchain-20080530.tgz
  11. # cd ./kandroid-arm-toolchain-20080522/bin
  12. # ls
  13.                arm-android-linux-gnueabi-addr2line  arm-android-linux-gnueabi-gprof
  14.                arm-android-linux-gnueabi-ar         arm-android-linux-gnueabi-jcf-dump
  15.                arm-android-linux-gnueabi-as         arm-android-linux-gnueabi-jv-scan
  16.                arm-android-linux-gnueabi-c++        arm-android-linux-gnueabi-ld
  17.                arm-android-linux-gnueabi-c++filt    arm-android-linux-gnueabi-nm
  18.                arm-android-linux-gnueabi-cc         arm-android-linux-gnueabi-objcopy
  19.                arm-android-linux-gnueabi-cpp        arm-android-linux-gnueabi-objdump
  20.                arm-android-linux-gnueabi-g++        arm-android-linux-gnueabi-populate
  21.                arm-android-linux-gnueabi-gcc        arm-android-linux-gnueabi-ranlib
  22.                arm-android-linux-gnueabi-gcc-4.2.3  arm-android-linux-gnueabi-readelf
  23.                arm-android-linux-gnueabi-gccbug     arm-android-linux-gnueabi-run
  24.                arm-android-linux-gnueabi-gcj        arm-android-linux-gnueabi-size
  25.                arm-android-linux-gnueabi-gcjh       arm-android-linux-gnueabi-sstrip
  26.                arm-android-linux-gnueabi-gcov       arm-android-linux-gnueabi-strings
  27.                arm-android-linux-gnueabi-gdb        arm-android-linux-gnueabi-strip
  28.                arm-android-linux-gnueabi-gjnih #
  29. # ./arm-android-linux-gnueabi-gcc -v
复制代码


---------------------------------------------------------------------------------------------------------------
Using built-in specs.
Target: arm-android-linux-gnueabi
Configured with: /opt/androidtoolchain110/bin/targets/src/gcc-4.2.3/configure --build=i686-pc-linux-gnu --target=arm-android-linux-gnueabi --host=i686-pc-linux-gnu --prefix=/root/x-tools/arm-android-linux-gnueabi --with-sysroot=/root/x-tools/arm-android-linux-gnueabi/arm-android-linux-gnueabi/sys-root --enable-languages=c,c++,java --with-arch=armv6j --with-cpu=arm1136jf-s --with-tune=arm1136jf-s --with-float=soft --enable-__cxa_atexit --disable-multilib --with-gmp=/root/x-tools/arm-android-linux-gnueabi --with-mpfr=/root/x-tools/arm-android-linux-gnueabi --with-local-prefix=/root/x-tools/arm-android-linux-gnueabi/arm-android-linux-gnueabi/sys-root --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-c99 --enable-long-long --with-bugurl=http://www.kandroid.org --with-pkgversion=kandroid-invain-arm_v6_nfp_le-ver.1.1.2.1
Thread model: posix
gcc version 4.2.3

----------------------------------------------------------------------------------------------------------

  1. # vi autotoolpath.sh
  2. #!/bin/bash
  3. export PATH=/opt/kandroid-1.1.2.1-20080530.glibc/bin:$PATH
复制代码


        6. Android编译
         1) 至sun网站下载JDK1.5(jdk-1_5_0_21-linux-i586-rpm.bin)
   

  1. # ./jdk-1_5_0_21-linux-i586-rpm.bin
复制代码


          解压成:jdk-1_5_0_21-linux-i586-rpm.rpm

         2) 安装JDK 1.5
  
  1. # rpm -ivh jdk-1_5_0_21-linux-i586-rpm.rpm
复制代码



         3) 下载gperf-3.0.4.tar.gz, 然后安装
   
  1. ./configure
  2. make
  3. make install
复制代码


        4) 在/etc/profile末尾添加

  1. JAVA_HOME=/usr/java/jdk1.5.0_21
  2. export ANDROID_JAVA_HOME=$JAVA_HOME
  3. PATH=$JAVA_HOME/bin:$PATH
  4. export PATH
  5. CLASSPATH=.:$JAVA_HOEM/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  6. export CLASSPATH
复制代码


         5) 编译Android
        在Android目录执行make.
     

  1. # make
复制代码


         6) 编译Android SDK
  1. # ./build/envsetup.sh
复制代码


         如果出现JAVA链接问题,执行:
  1. # JAVA_HOME=/usr/java/jdk1.5.0_21
  2. # export ANDROID_JAVA_HOME=$JAVA_HOME
复制代码


       7. S3C6410 Linux内核编译

  1. # cd samsung-s3c6410-linux
  2. # cp ./arch/arm/configs/smdk6410mtd.android_defconfig .config
  3. # make menuconfig
  4. # make
复制代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值