[Android] BeagleboneBlack ソースコードからビルドメモ

BeagleBoneBlack用にAndroidのソースコードからビルドする環境構築のメモを残します。linuxは、Ubuntu 12.04 LTSにインストールしました。HDDの容量は、100GB以上確保しましょう。

■開発ツールのインストール
$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 minicom tftpd uboot-mkimage expect libgl1-mesa-dri libgl1-mesa-dri:i386 libglapi-mesa:i386 libncurses5-dev vim

$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

■install Oracle JDK 6
1.Download the latest JDK 6 installer
from Oracle http://www.oracle.com/technetwork/java/javase/downloads/index.html.
Accept the license agreement and click on the Linux x64 bin installer.
The downloaded file will be named jdk-6uXX-linux-x64.bin where XX is the JDK 6 update version.

2.Follow the following steps to install JDK 6
$ chmod a+x jdk-6uXX-linux-x64.bin
$ ./jdk-6uXX-linux-x64.bin
$ sudo mkdir -p /usr/lib/jvm
$ sudo mv jdk1.6.0_45 /usr/lib/jvm/
$ sudo update-alternatives –install “/usr/bin/java” “java” “/usr/lib/jvm/jdk1.6.0_45/bin/java” 1
$ sudo update-alternatives –install “/usr/bin/javac” “javac” “/usr/lib/jvm/jdk1.6.0_45/bin/javac” 1
$ sudo update-alternatives –config java
$ sudo update-alternatives –config javac

■ソースコードの取得
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/repo
$ chmod a+x repo
$ sudo mv repo /usr/bin/.

$ mkdir android-BBB
$ cd android-BBB
$ repo init -u git://gitorious.org/rowboat/manifest.git -m rowboat-jb-am335x.xml
$ repo sync

■ソースコードのビルド
1.ツールチェインhdのパス設定
$ export PATH=$HOME/android-BBB/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin:$PATH

2.ブートローダのビルド
$ cd $HOME/android-BBB/u-boot
$ make CROSS_COMPILE=arm-eabi- distclean
$ make CROSS_COMPILE=arm-eabi- am335x_evm_config
$ make CROSS_COMPILE=arm-eabi-

3.Linux Kernelのビルド
$ cd $HOME/android-BBB/kernel
$ make ARCH=arm CROSS_COMPILE=arm-eabi- distclean
$ make ARCH=arm CROSS_COMPILE=arm-eabi- am335x_evm_android_defconfig
$ make ARCH=arm CROSS_COMPILE=arm-eabi- uImage

$ mkdir $HOME/android-BBB/device/ti/beagleboneblack/firmware
$ cp /lib/firmware/rtlwifi/rtl8192cufw.bin ../device/ti/beagleboneblack/firmware/.
$ cp /lib/firmware/rtlwifi/rt2870.bin ../device/ti/beagleboneblack/firmware/.

4.ユーザーランドのビルド
$ cd $HOME/android-BBB
$ make TARGET_PRODUCT=beagleboneblack droid -j8

5.SGXのドライバ、ライブラリのビルド
$ cd $HOME/android-BBB/hardware/ti/sgx
$ make TARGET_PRODUCT=beagleboneblack OMAPES=4.x ANDROID_ROOT_DIR=$HOME/android-BBB
$ make TARGET_PRODUCT=beagleboneblack OMAPES=4.x ANDROID_ROOT_DIR=$HOME/android-BBB install

6.ユーザーランドのパッケージ化
$ cd $HOME/android-BBB
$ make TARGET_PRODUCT=beagleboneblack fs_tarball

7.microSDにコピー
$ mkdir $HOME/image
$ cd $HOME/image
$ cp $HOME/android-BBB/kernel/arch/arm/boot/uImage .
$ cp $HOME/android-BBB/u-boot/MLO .
$ cp $HOME/android-BBB/u-boot/u-boot.img .
$ cp $HOME/android-BBB/external/ti_android_utilities/am335x/u-boot-env/uEnv_beagleboneblack.txt .
$ cp $HOME/android-BBB/out/target/product/beagleboneblack/rootfs.tar.bz2 .
$ cp $HOME/android-BBB/external/ti_android_utilities/am335x/mk-mmc/mkmmc-android.sh .
$ sudo ./mkmmc-android.sh /dev/sdd MLO u-boot.img uImage uEnv_beagleboneblack.txt rootfs.tar.bz2

[Android] BeagleboneBlack ソースコードからビルドメモ” への1件のコメント
1 Ping/トラックバック のために "[Android] BeagleboneBlack ソースコードからビルドメモ"
  1. […] Beagle Bone BlackにLogitecのUSB LAN アダプタを接続して使えるようにポーティングしました。変更手順は、下記のstep1, step2を参考にしてください。 ソースコードからのビルド手順は、「BeagleBoneBlackソースコードからのビルドメモ」を参考にしてください。 […]

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください