Rockbox
Find a file
Jens Arnold a8c408c6a3 More consistent error checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8364 a1c6a512-1295-4272-9138-f99709370657
2006-01-18 08:34:32 +00:00
apps More consistent error checking. 2006-01-18 08:34:32 +00:00
bootloader H300: Removed lcd_enable() and added a delay to let the hard drive settle before entering USB mode 2006-01-11 15:37:08 +00:00
CVSROOT Added the wps module to the rockbox module 2005-11-21 17:05:16 +00:00
docs Use SDL's thread wrappers instead of pthreads to increase portability in the SDL sim. Patch by Andrew Pilley with some changes by me. 2006-01-13 13:38:31 +00:00
firmware New codec loader, using the same mechanism as the new plugin loader. API version numbering restarted for the new system. Uses the target ID from configure, so don't change that too often. * Fixed sim_plugin_load_ram() to truncate the tempfile. * Reduced plugin buffer size to 512KB for iriver and iPod. 2006-01-18 00:05:14 +00:00
flash Support for a colon-separated path in APPEXTRA 2005-10-27 14:39:00 +00:00
fonts commit the right files this time.. 2005-12-30 10:03:19 +00:00
gdb Port A inits for cold-start capability 2003-06-29 21:57:20 +00:00
songdbj javazoom converter, not the tritonus one.. 2005-07-11 15:43:44 +00:00
tools The dependency generation for credits.c failed since it includes a file 2006-01-16 22:45:44 +00:00
uisimulator New codec loader, using the same mechanism as the new plugin loader. API version numbering restarted for the new system. Uses the target ID from configure, so don't change that too often. * Fixed sim_plugin_load_ram() to truncate the tempfile. * Reduced plugin buffer size to 512KB for iriver and iPod. 2006-01-18 00:05:14 +00:00
wps minor fixes of alignment 2005-12-13 20:41:16 +00:00
www Added link to IrcTalk 2005-12-15 08:48:58 +00:00

               __________               __   ___.
     Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
     Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
     Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
     Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
                       \/            \/     \/    \/            \/

Build Your Own Rockbox

1. Check out 'rockbox' from CVS (or extract a downloaded archive). You
   want to check out 'rockbox-devel' instead if you want the simulator
   code too (for trying out things on host before making target tests).

   (For more information about the simulator, read UISIMULATOR.)

   $ cvs -d:pserver:anonymous@www.rockbox.org:/cvsroot/rockbox login 
   $ cvs -z3 -d:pserver:anonymous@www.rockbox.org:/cvsroot/rockbox co rockbox

     or

   $ tar xzf rockbox.tar.gz

2. Create a build directory, preferably in the same directory as the firmware/
   and apps/ directories. This is where all generated files will be written.

   $ cd rockbox
   $ mkdir build
   $ cd build

4. In your build directory, run the 'tools/configure' script and enter what
   target you want to build for and if you want a debug version or not (and a
   few more questions). It'll prompt you. The debug version is for making a
   gdb version out of it. It is only useful if you run gdb towards your target
   Archos.

   $ ../tools/configure

5. *ploink*. Now you have got a Makefile generated for you.

6. Make sure you have sh-elf-gcc and siblings in the PATH. Make sure that you
   have 'perl' in your PATH too.

   $ which sh-elf-gcc
   $ which perl

7. Run 'make' and soon the necessary pieces from the firmware and the apps
   directories have been compiled, linked and scrambled for you.

   $ make

8. Copy the archos.mod or ajbrec.ajz file to your archos, reboot it and
   *smile*.  Recent Rockbox versions need no reboots, just PLAY a new rockbox
   version and that'll be loaded and replace the currently running version.

   $ mount /dev/sda1 /mnt/archos
   $ cp ajbrec.ajz /mnt/archos
   $ umount /mnt/archos

Whenever the tools/configure script gets updated, you can make your makefile
updated too by running 'tools/configure update'.

If you want to build for more than one target, just create several build
directories and create a setup for each target:

   $ mkdir build-fmrecorder
   $ cd build-fmrecorder
   $ ../tools/configure

   $ mkdir build-player
   $ cd build-player
   $ ../tools/configure

Questions anyone? Ask on the mailing list. We'll be happy to help you!