Rockbox on Android

Rockbox on Android

Persiapan

Perlu ada dua paket:

  • Android SDK: Untuk mengembangkan aplikasi Java biasa.
  • Android NDK: Untuk mengembangkan aplikasi yang membutuhkan pustaka Linux/alami (.so).

Android SDK

Android SDK, paket standar bagi para pengembang untuk mengembangkan Android. Untuk Ubuntu lihat ini.

Untuk Gentoo, silakan

# emerge -av dev-util/android-sdk-update-manager

Cara generik adalah mengunduhnya dan mengekstrak ke “/opt”:

$ wget http://dl.google.com/android/android-sdk_r10-linux_x86.tgz
$ sudo tar android-sdk_r10-linux_x86.tgz -C /opt

Dengan perintah di atas,  SDK diekstraksi ke /opt/android-sdk_r10. Jalankan perkakas “android” untuk mengunduh SDK Platform yang dibutuhkan. Saya menjalankan ini di terminal GUI:

$ /opt/android-sdk_r10-linux/tools/android

Pilih versi Platform, Javadoc, dan sampel (kalau-kalau mau belajar) yang mau diunduh. Saya mengunduh semua versi Platform. Tunggu sebentar, ngopi-ngopi dulu, sudahkah Anda menyapa anak/istri/suami/orang tua/tetangga Anda?

Android NDK

Paket Android NDK diperlukan untuk mengompilasi “librockbox.so”. Caranya:

$ wget http://dl.google.com/android/ndk/android-ndk-r5b-linux-x86.tar.bz2
$ tar xvfj android-ndk-r5b-linux-x86.tar.bz2 -C /opt

Nanti NDK terpasang di “/opt/android-ndk-r5b/”.

Pasang ROCKBOX

Rockbox membutuhkan ANDROID_SDK_PATH dan ANDROID_NDK_PATH ke arah kedua perkakas tersebut. Kebetulan saya menggunakan Gentoo, jadi keduanya saya buat seperti berikut:

$ export ANDROID_SDK_PATH=/opt/android-sdk-update-manager
$ export ANDROID_NDK_PATH=/opt/android-ndk-r5b

Rockbox utamanya menggunakan SVN, tetapi saya di belakang PROXY, sehingga saya menggunakan GIT dengan HTTP.

$ git clone http://git.rockbox.org/rockbox
$ cd rockbox

Mengompilasi yang baik adalah dengan membuat direktori sendiri. Hal ini agar tidak mencampur berkas-berkas kompilasi dan berkas kode sumber.

$ mkdir bangun && cd bangun

Konfigurasikan Rockbox yang hendak dibangun:

$ ../tools/configure --eabi --target=android --ram=256
Using temporary directory /tmp
Enter the LCD width (default: 320)

Enter the LCD height (default: 480)

Selected 320 x 480 resolution
Platform set to android
Build (N)ormal, (A)dvanced, (S)imulator, (B)ootloader, (C)heckWPS, (D)atabase tool, (M)anual: (Defaults to N)

Normal build selected
Building Rockbox as an Application
Using source code root directory: /home/jp/Build/GIT/rockbox
Using arm-linux-androideabi-gcc 4.4.3 (404)
Using arm-linux-androideabi-ld 2.19
Found and uses ccache (/usr/bin/ccache)
Created Makefile

Kebetulan Nexian Journey saya menggunakan resolusi 320×480 dan bermemori 256MB. Saya juga menggunakan EABI untuk antarkompilasi. Sebenarnya ada juga fasilitas “–thumb” yang mengaktifkan thumb. Tapi, karena saya sudah menggunakan Python 3, skrip-skrip Python Rockbox tidak jalan. Tetapi, kemungkinan besar sistem Anda masih memiliki Python 2.6 atau 2.7 yang kemungkinan besar bisa menjalankan skrip-skrip tersebut.

Mari kita melakukan kompilasi:

$ make -j4 && make zip && make apk

Berkas “rockbox.apk” akan ada di direktori “bangun”. Silakan ditaruh ke telepon Anda.