Difference between revisions of "Building Orbiter for the Nokia 770"

From LinuxMCE
Jump to: navigation, search
Line 1: Line 1:
 
<table width="100%"> <tr><td bgcolor="#FFCFCF">This page was written by Pluto and imported with their permission when LinuxMCE branched off in February, 2007.  In general any information should apply to LinuxMCE.  However, this page should be edited to reflect changes to LinuxMCE and remove old references to Pluto.</td></tr> </table>These are the instructions to build a version of [[Orbiter]] for the Nokia 770 internet platform. Nokia 770 has an ARM family processor, therefore you will need to cross-compile if your build machine is an Intel.
 
<table width="100%"> <tr><td bgcolor="#FFCFCF">This page was written by Pluto and imported with their permission when LinuxMCE branched off in February, 2007.  In general any information should apply to LinuxMCE.  However, this page should be edited to reflect changes to LinuxMCE and remove old references to Pluto.</td></tr> </table>These are the instructions to build a version of [[Orbiter]] for the Nokia 770 internet platform. Nokia 770 has an ARM family processor, therefore you will need to cross-compile if your build machine is an Intel.
  
 +
==Requirements==
 
You will need:
 
You will need:
 
* a Debian Sarge box to host the build
 
* a Debian Sarge box to host the build
Line 12: Line 13:
 
   scratchbox-toolchain-i686-glibc_0.9.8.5_i386.deb               
 
   scratchbox-toolchain-i686-glibc_0.9.8.5_i386.deb               
  
Preparing the Nokia tablet:
+
==Preparing the Nokia tablet==
 
# Make sure it is connected to the network - check the Connection manager for a WiFi connection
 
# Make sure it is connected to the network - check the Connection manager for a WiFi connection
  
  
Preparing the build machine:
+
==Preparing the build machine==
 
# Install Scratchbox debs on the build machine
 
# Install Scratchbox debs on the build machine
 
# Add yourself as a Scratchbox user: <tt>'''/scratchbox/sbin/sbox_adduser ''username'''''</tt>
 
# Add yourself as a Scratchbox user: <tt>'''/scratchbox/sbin/sbox_adduser ''username'''''</tt>
Line 58: Line 59:
 
#* /pluto/trunk/src/Orbiter/Makefile: append "''' -DMAEMO_NOKIA770'''" to CPPFLAGS on line 74
 
#* /pluto/trunk/src/Orbiter/Makefile: append "''' -DMAEMO_NOKIA770'''" to CPPFLAGS on line 74
  
Building Orbiter
+
==Building Orbiter==
 
# While inside Scratchbox, go into /pluto/trunk/src/SerializeClass and type <tt>'''make'''</tt>
 
# While inside Scratchbox, go into /pluto/trunk/src/SerializeClass and type <tt>'''make'''</tt>
 
# Go into /pluto/trunk/src/PlutoUtils and type <tt>'''make'''</tt>
 
# Go into /pluto/trunk/src/PlutoUtils and type <tt>'''make'''</tt>
 
# Go into /pluto/trunk/src/DCE and type <tt>'''make'''</tt>
 
# Go into /pluto/trunk/src/DCE and type <tt>'''make'''</tt>
 
# Go into /pluto/trunk/src/Orbiter and type <tt>'''make bin'''</tt>
 
# Go into /pluto/trunk/src/Orbiter and type <tt>'''make bin'''</tt>
 +
# After a while, the following files will result in /pluto/trunk/src
 +
#* lib/libDCECommon.so
 +
#* lib/libSerializeClass.so
 +
#* lib/libPlutoUtils.so
 +
#* bin/Orbiter
 +
# Copy these files via scp
 +
 +
==Running Orbiter==
 +
On the tablet itself (NOT via ssh) do this:
 +
export LD_LIBRARY_PATH=.
 +
./Orbiter -r xxx.xxx.xxx.xxx -d yy -l orbiter.log
 +
where xxx.xxx.xxx.xxx is the IP address of the DCE Router, and yy is the device number assigned to your new Orbiter
  
 
==External references==
 
==External references==
 
* http://www.maemo.org/platform/docs/tutorials/Maemo_tutorial.html#settingup
 
* http://www.maemo.org/platform/docs/tutorials/Maemo_tutorial.html#settingup

Revision as of 16:19, 5 June 2006

This page was written by Pluto and imported with their permission when LinuxMCE branched off in February, 2007. In general any information should apply to LinuxMCE. However, this page should be edited to reflect changes to LinuxMCE and remove old references to Pluto.
These are the instructions to build a version of Orbiter for the Nokia 770 internet platform. Nokia 770 has an ARM family processor, therefore you will need to cross-compile if your build machine is an Intel.

Requirements

You will need:

 scratchbox-core_0.9.8.5_i386.deb                              
 scratchbox-devkit-debian_0.9.8.5_i386.deb                     
 scratchbox-doctools_0.9.8.5_i386.deb                          
 scratchbox-libs_0.9.8.5_i386.deb                              
 scratchbox-toolchain-arm-glibc_0.9.8.5_i386.deb               
 scratchbox-toolchain-i686-glibc_0.9.8.5_i386.deb              

Preparing the Nokia tablet

  1. Make sure it is connected to the network - check the Connection manager for a WiFi connection


Preparing the build machine

  1. Install Scratchbox debs on the build machine
  2. Add yourself as a Scratchbox user: /scratchbox/sbin/sbox_adduser username
  3. Check out a fresh working copy of Pluto from http://svn.plutohome.com/pluto/trunk/src/ into /scratchbox/users/username/pluto/trunk/src (username is assumed to be your user name on the build machine)
  4. Copy or symlink the Maemo SDK into /scratchbox/packages
  5. Log in to Scratchbox by typing scratchbox
  6. Configure Scratchbox cross-compile target:
> sbox-config -ct Nokia770

Available compilers:
       0) arm-linux-gcc-3.3_3.3.4-glibc-2.3.2.ds1
       1) host-gcc
       2) i686-linux-gcc-3.3_3.3.4-glibc-2.3.2.ds1

Enter compiler number: 0

Available CPU-transparency methods:
       sbrsh
       qemu-arm
       qemu-ppc

Enter method name (qemu-arm): qemu-arm

Available devkits:
        debian

Enter list of devkit names (none): debian
  1. Select the new cross-compile target: sbox-config -st Nokia770
  2. Unpack the Maemo rootstrap: sbox-config -er /scratchbox/packages/Maemo_Dev_Platform_RS_v1.1_arm.tgz
  3. sbox-config -cc
  4. sbox-config -cf
  5. Update the package list inside Scratchbox by typing apt-get update
  6. Install the following build-time dependencies (with apt-get install)
    • libmysqlclient12-dev
    • libid3-dev
    • xlibmesa-gl-dev
  7. Edit the following Makefiles as follows:
    • /pluto/trunk/src/SerializeClass/Makefile: append " -DMAEMO_NOKIA770" to CXXFLAGS on line 4
    • /pluto/trunk/src/PlutoUtils/Makefile: append " -DMAEMO_NOKIA770" to CXXFLAGS on line 4
    • /pluto/trunk/src/DCE/Makefile: append " -DMAEMO_NOKIA770" to CXXFLAGS on line 4
    • /pluto/trunk/src/Orbiter/Makefile: append " -DMAEMO_NOKIA770" to CPPFLAGS on line 74

Building Orbiter

  1. While inside Scratchbox, go into /pluto/trunk/src/SerializeClass and type make
  2. Go into /pluto/trunk/src/PlutoUtils and type make
  3. Go into /pluto/trunk/src/DCE and type make
  4. Go into /pluto/trunk/src/Orbiter and type make bin
  5. After a while, the following files will result in /pluto/trunk/src
    • lib/libDCECommon.so
    • lib/libSerializeClass.so
    • lib/libPlutoUtils.so
    • bin/Orbiter
  6. Copy these files via scp

Running Orbiter

On the tablet itself (NOT via ssh) do this:

export LD_LIBRARY_PATH=.
./Orbiter -r xxx.xxx.xxx.xxx -d yy -l orbiter.log

where xxx.xxx.xxx.xxx is the IP address of the DCE Router, and yy is the device number assigned to your new Orbiter

External references