Add (untested) device detection using sansapatcher.
[Rockbox.git] / docs / README
blob178776ee31bbbf960b58501507ac6c6f92697517
1                __________               __   ___.
2      Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
3      Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
4      Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
5      Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
6                        \/            \/     \/    \/            \/
8 Build Your Own Rockbox
10 1. Check out 'rockbox' from SVN (or extract a downloaded archive).
12    $ svn co svn://svn.rockbox.org/rockbox/trunk rockbox
14      or
16    $ tar xjf rockbox.tar.bz2
18 2. Create a build directory, preferably in the same directory as the firmware/
19    and apps/ directories. This is where all generated files will be written.
21    $ cd rockbox
22    $ mkdir build
23    $ cd build
25 3. Make sure you have sh/arm/m68k-elf-gcc and siblings in the PATH. Make sure
26    that you have 'perl' in your PATH too. Your gcc cross compiler needs to be
27    a particular version depending on what player you are compiling for. These
28    can be acquired with the rockboxdev.sh script in the /tools/ folder of the
29    source, or will have been included if you've installed one of the
30    toolchains or development environments provided at http://www.rockbox.org/
32    $ which sh-elf-gcc
33    $ which perl
35 4. In your build directory, run the 'tools/configure' script and enter what
36    target you want to build for and if you want a debug version or not (and a
37    few more questions). It'll prompt you. The debug version is for making a
38    gdb version out of it. It is only useful if you run gdb towards your target
39    Archos.
41    $ ../tools/configure
43 5. *ploink*. Now you have got a Makefile generated for you.
45 6. Run 'make' and soon the necessary pieces from the firmware and the apps
46    directories have been compiled, linked and scrambled for you.
48    $ make
49    $ make zip
51 7. unzip the rockbox.zip on your music player, reboot it and
52    *smile*.
54 Whenever the tools/configure script gets updated, you can make your makefile
55 updated too by running 'tools/configure update'.
57 If you want to build for more than one target, just create several build
58 directories and create a setup for each target:
60    $ mkdir build-fmrecorder
61    $ cd build-fmrecorder
62    $ ../tools/configure
64    $ mkdir build-player
65    $ cd build-player
66    $ ../tools/configure
68 Questions anyone? Ask on the mailing list. We'll be happy to help you!