Android-x86

android-x86 rc1

プロジェクトホームページ

http://www.android-x86.org/

ISO ライブイメージダウンロード

http://code.google.com/p/android-x86/downloads/list

ハードウェア動作報告一覧

http://www.android-x86.org/hardware-list

Windows + Ubuntu + Android-x86 マルチブート環境構築手順

  1. Windows 8 をインストール

  2. Ubuntu を/dev/sda3 にインストール

    • ファイルシステムはext4。
    • ブートローダ(GRUB)を/dev/sda にインストール。
  3. Android-x86 を/dev/sda3 にインストール

    • /android-******/ にインストールされる。
    • ブートローダはインストールしない
    • 書き込み可能にする
  4. Android-x86 用のブートエントリを追加

/etc/grub.d/40_custom
menuentry "Android-x86 4.0" --class android --class os {
insmod ext2
set root='(hd0,3)'
echo 'Loading Android-x86 4.0 ...'
linux /android-4.0-RC1/kernel root=/dev/ram0 androidboot.hardware=tegav2 acpi_sleep=s3_bios,s3_mode SRC=/android-4.0-RC1 DATA=
initrd /android-4.0-RC1/initrd.img
}
$ sudo update-grub

パーティションレイアウト

Device FS Size Use
/dev/sda1 ntfs 0.35 GiB EFI
/dev/sda2 ntfs 150.00 GiB Windows 8
/dev/sda3 ext4 145.00 GiB Ubuntu 12.04,
Andorid-x86 4.0
/dev/sda4 swap 2.75 GiB Linux swap

仮想キーボードと物理キーボードを同時に使うための設定

/android-4.0-RC1/system/usr/keylayout/AT_translated_set_2_keyboard.kl を差し替える。
Inspiron duo 用のサンプル(一部誤っている)

/android-4.0-RC1/system/usr/keylayout/AT_translated_set_2_keyboard.kl
# Copyright (C) 2012 The Android-x86 Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#

key 1 HOME WAKE_DROPPED
key 114 VOLUME_DOWN
key 115 VOLUME_UP
key 125 APP_SWITCH
key 127 ESCAPE WAKE_DROPPED

#

#key 1 BACK WAKE_DROPPED
key 2 1
key 3 2
key 4 3
key 5 4
key 6 5
key 7 6
key 8 7
key 9 8
key 10 9
key 11 0
key 12 MINUS
key 13 EQUALS
key 14 DEL
key 15 TAB
key 16 Q
key 17 W
key 18 E
key 19 R
key 20 T
key 21 Y
key 22 U
key 23 I
key 24 O
key 25 P
key 26 LEFT_BRACKET
key 27 RIGHT_BRACKET
key 28 ENTER
key 30 A
key 31 S
key 32 D
key 33 F
key 34 G
key 35 H
key 36 J
key 37 K
key 38 L
key 39 SEMICOLON
key 40 APOSTROPHE
key 42 SHIFT_LEFT
key 43 BACKSLASH
key 44 Z
key 45 X
key 46 C
key 47 V
key 48 B
key 49 N
key 50 M
key 51 COMMA
key 52 PERIOD
key 53 SLASH
key 56 ALT_LEFT
key 57 SPACE
key 60 SOFT_RIGHT WAKE
key 61 CALL WAKE_DROPPED
key 62 ENDCALL WAKE_DROPPED
key 64 ENDCALL WAKE_DROPPED
key 103 DPAD_UP WAKE_DROPPED
key 105 DPAD_LEFT WAKE_DROPPED
key 106 DPAD_RIGHT WAKE_DROPPED
key 107 ENDCALL WAKE_DROPPED
key 108 DPAD_DOWN WAKE_DROPPED
key 113 VOLUME_MUTE
#key 114 VOLUME_DOWN
#key 115 VOLUME_UP
key 116 POWER WAKE
#key 125 HOME WAKE
#key 127 MENU WAKE_DROPPED
key 139 MENU WAKE_DROPPED
key 150 EXPLORER
key 155 ENVELOPE
key 211 FOCUS
key 212 CAMERA
key 215 AT
key 221 DPAD_CENTER WAKE_DROPPED
key 227 STAR
key 228 POUND
key 230 SOFT_RIGHT WAKE
key 231 CALL WAKE_DROPPED
key 399 GRAVE

Android-x86 で動作するFirefox (Fennec) 開発版/リリース版のビルド手順

  1. ビルド用SDK の配置

    • /tools/android-sdk-linux
    • /tools/android-ndk-r7c
    • /tools/jdk1.6.0_35
  2. ビルド用依存パッケージの取得

$ sudo apt-get install mercurial ccache
$ sudo apt-get build-dep firefox
  1. 開発版ソースコードの取得
$ cd /tools/apps/firefox/
$ hg clone http://hg.mozilla.org/mozilla-central/ src-central
$ cd src-central
  1. 開発版ソースコード用のmozconfig のカスタマイズ
$ cp ./mobile/android/config/mozconfigs/android-x86/nightly .mozconfig
/tools/apps/firefox/src-central/.mozconfig
. "$topsrcdir/mobile/android/config/mozconfigs/common"

# Global options
mk_add_options MOZ_MAKE_FLAGS="-j4"

# Build Fennec
ac_add_options --enable-application=mobile/android

# Android
ac_add_options --target=i386-linux-android
ac_add_options --with-android-ndk="/tools/android-ndk-r7c"
ac_add_options --with-android-sdk="/tools/android-sdk-linux/platforms/android-14"
ac_add_options --with-android-version=14
ac_add_options --with-system-zlib
#ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}

# IonMonkey disabled in bug 789373
ac_add_options --disable-ion

export JAVA_HOME=/tools/jdk1.6.0_35
#export MOZILLA_OFFICIAL=1
#export MOZ_TELEMETRY_REPORTING=1

ac_add_options --with-branding=mobile/android/branding/nightly

# Treat warnings as errors in directories with FAIL_ON_WARNINGS.
ac_add_options --enable-warnings-as-errors

# Use ccache
ac_add_options --with-ccache=/usr/bin/ccache
  1. リリース版ソースコードの取得
$ cd /tools/apps/firefox/
$ hg clone http://hg.mozilla.org/releases/mozilla-release src-release
$ cd src-release
  1. リリース版ソースコード用のmozconfig のカスタマイズ
$ cp ./mobile/android/config/mozconfigs/android-x86/release .mozconfig
/tools/apps/firefox/src-release/.mozconfig
# Global options
mk_add_options MOZ_MAKE_FLAGS="-j4"

# Build Fennec
ac_add_options --enable-application=mobile/android

# Android
ac_add_options --target=i386-linux-android
ac_add_options --with-android-ndk="/tools/android-ndk-r7c"
ac_add_options --with-android-sdk="/tools/android-sdk-linux/platforms/android-14"
ac_add_options --with-android-version=14
ac_add_options --with-system-zlib
#ac_add_options --enable-updater
#ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}

export JAVA_HOME=/tools/jdk1.6.0_35
#export MOZILLA_OFFICIAL=1
#export MOZ_TELEMETRY_REPORTING=1

#ac_add_options --enable-official-branding
ac_add_options --with-branding=mobile/android/branding/unofficial
  1. firefox のビルド
    各フォルダで以下のコマンドを実行します。
$ make -f client.mk build_and_deploy
  1. インストール
    以下のフォルダに生成された.apk ファイルをAndroid-x86 でインストールします。
出力先
./obj-x86_64-unknown-linux-gnu/dist/

Android のビルド手順(Ubuntu 12.04 x86_64)

http://www.android-x86.org/getsourcecode
http://source.android.com/source/download.html

前提パッケージをインストール

$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z1-dev lib32z1 lib32ncurses5 lib32bz2-1.0
$ sudo apt-get install gcc-multilib g++-multilib libc6-i386 libc6-dev-i386

JDK をインストール

Oracle のサイトからjdk-6u33-linux-x64.bin を拾ってきて展開、./bin にパスを通しておく。念の為、JAVA_HOME も./ を設定しておこう。

repo をインストール

$ mkdir ~/bin
$ PATH=~/bin:$PATH
$ curl http://android.git.kernel.org/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

ソースを取得

  • Android 4.1 (Jelly Bean) の場合
$ mkdir jellybean
$ cd jellybean
$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.1.1_r1
$ repo sync
  • Android-x86 4.0 (Ice Cream Sandwich) の場合
$ mkdir ics-x86
$ cd ics-x86
$ repo init -u http://git.android-x86.org/manifest -b ics-x86
$ repo sync

ビルド

$ source build/envsetup.sh
$ lunch # 選択肢が表示されるので、選択
$ make -j4

./out/target/product/ にバイナリが作成される。


Comment