summaryrefslogtreecommitdiffstats
path: root/docs/README
blob: b0f4cef599e49077147d76dfdca1f04d4c2f8c72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
               __________               __   ___.
     Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
     Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
     Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
     Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
                       \/            \/     \/    \/            \/

Build your own archos.mod (or ajbrec.ajz)

1. Check out 'firmware', 'apps', 'docs' and 'tools' from CVS (or possibly from
   a downloaded archive). You may possibly want 'uisimulator' too (for trying
   out things on host before making target tests).

   If you do want to play with the simulator, read UISIMULATOR.

2. Build the tools by running 'make' in the tools/ directory.

3. Create your own build directory, preferably in the same directory as the
   firmware/ and apps/ directories. This is where all generated files will be
   put.

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. 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.

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.

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

8. Copy the archos.mod/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.

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 a new build
directory and create a setup for another target combination in there.

Questions anyone? Take them to the mailing list. We'll be happy to help you
out!