Before You Begin

first I prev | next | last

This document contains the following sections:

Note: This section contains information you may find useful while working through the phoneME Feature installation process. It is for your information only. If you want to begin downloading and installing the phoneME Feature software right away, see Downloading the phoneME Feature Software Source Code.

Note: This document is part of the MR2 development release version of phoneME Feature software. The instructions have not been verified or tested. The contents will continue to change as development moves forward.


Document Notes and Conventions

For your ease of use, this guide uses the following conventions:

  • The document variable $HOME means "the location where you have installed the phoneME Feature software." For example, if you install the phoneME Feature software into the directory /home/chocolate/phoneME_feature, changing directory to $HOME/midp means to change directory to /home/chocolate/phoneME_feature/midp.

  • For all procedures and examples carried out on the Linux platform, the Bash shell is assumed. If you are not using the Bash shell, be sure to enter variables and commands for the shell you are using.

  • For all procedures and examples carried out on the Windows platform, the use of Cygwin (Cyg4Me) is assumed. Instructions for installing Cyg4Me are provided here.


Setting Variables for Your Build Environment

Preparing your build environment requires you to set environment variables for your Linux/i386 or Win32/i386 build platform. This section describes how to do this on both Linux/i386 and win32/i386 build platforms. The specific variables that need to be set for each platform are described in the remainder of this document.

BuIld environment variables can be set in two ways:

Setting System Variables

On a Linux/i386 build platform, a system variable is set in the following way:

    $ export VARIABLE=value

    For example, to set TARGET_CPU as a system variable on a Linux/i386 platform , type:

    $ export TARGET_CPU=i386

On a Win32/i386 build platform, a system variable is set in the following way:

    $ set VARIABLE=value

    For example, to set the TARGET_CPU as a system variable on a Win32/i386 platform, type:

    $ set TARGET_CPU=i386

Setting Command Line Variables

On Linux/i386 and Win32/i386 build platforms, a command line variable is set in the following way:

    $ make VARIABLE=value make_target

    For example, to set TARGET_CPU on a make command line for a Linux/i386 platform, use the following format:

    $ make TARGET_CPU=i386 all

Note: Typing make on the command line by itself is the same as typing make all.


Default Build Configuration

The default build configuration for your target platform is named using a combination of operating system (Linux or Win32), platform (i386 or ARM), and one or more build options. Setting (or not setting) specific build options determines the configuration of the build.

For example, for the Linux/ARM target platform (P2 board), the default build configuration uses Frame Buffer graphics (fb), with Adaptive User Interface Technology (chameleon), and multitasking (mvm). Therefore, the default build configuration is named linux_arm_fb_chameleon_mvm.

On the Win32/i386 platform, the default build configuration is win32_i386. If you build using the JavaCall porting layer for the Win32/i386 target platform, the build configuration is javacall_i386.

Building a Complete Audio Implementation

In order to build a complete implementation of JSR 135, the following files need to be modified.

On a Win32/i386 platform:

  • jsr135/win32-jsr135/src/native/AMRDecoder.c
  • jsr135/win32-jsr135/src/native/qsoundnative.c

On a Linux/ARM platform:

  • jsr135/linux-abb/src/native/qsoundnative.c

These files contain stubbed implementations of all native methods for the following classes.

On a Win32/i386 platform:

  • com.sun.mmedia.AMRDecoder

On Win32/i386 and Linux/ARM platforms:

  • com.sun.mmedia.QSound*

Sun Microsystems' compliant Mobile Media API (JSR 135) implementation utilizes audio libraries licensed from QSound Labs, Inc. (www.qsound.com).

Note: Other libraries are possible. If you choose other audio libraries, you will need to modify the listed files for those libraries.



first | prev | next | last