FreeCalypso > hg > freecalypso-tools
annotate INSTALL @ 613:ab4021fb1c66
doc/Loadtools-performance: flash programming added
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Mon, 24 Feb 2020 22:30:00 +0000 | 
| parents | c08ff097b2aa | 
| children | f33d050eac6e | 
| rev | line source | 
|---|---|
| 0 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 Building and installing FreeCalypso host tools | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 ============================================== | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | 
| 56 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 4 Our FreeCalypso host tools are designed to be installed in the /opt/freecalypso | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 5 directory hierarchy on your system. The author of this software is very | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 6 old-fashioned and refuses to use autotools (sorry, we aren't GNU), hence | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 7 various hard-coded paths under /opt/freecalypso are sprinkled in bazillion | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 8 places - thus changing this fixed install location is deemed to be impractical. | 
| 435 
0a01e1c4ea54
documentation: added some notes about the importance of preserving
 Mychaela Falconia <falcon@freecalypso.org> parents: 
411diff
changeset | 9 See PACKAGING and doc/opt-freecalypso-tree for more notes on this subject. | 
| 56 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 10 | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 11 In order to compile and install our host tools, follow these steps: | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 12 | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 13 1: Run 'make' as a regular user (not root) to compile the software. | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 14 | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 15 2: Decide if you prefer to have the /opt/freecalypso directory and everything | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 16 under it to be owned by root or by your non-root uid. | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 17 | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 18 If you prefer /opt/freecalypso to be root-owned: | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 19 | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 20 3A: Run 'make install' as root; the install rule in the | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 21 Makefile will do mkdir -p /opt/freecalypso as its first step. | 
| 0 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 | 
| 56 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 23 4A: You are done! | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 24 | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 25 If you prefer /opt/freecalypso to be owned by your "regular" non-root uid: | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 26 | 
| 208 
4022bfbaafd4
INSTALL: cosmetic fix in bullet point numbering
 Mychaela Falconia <falcon@freecalypso.org> parents: 
58diff
changeset | 27 3B: Become root just to create the /opt/freecalypso directory and chown it | 
| 56 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 28 to your non-root uid. | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 29 | 
| 208 
4022bfbaafd4
INSTALL: cosmetic fix in bullet point numbering
 Mychaela Falconia <falcon@freecalypso.org> parents: 
58diff
changeset | 30 4B: Run 'make install' as your regular uid; it should succeed because you | 
| 56 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 31 should have made yourself the owner of /opt/freecalypso with full write | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 32 permission in the previous step. | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 33 | 
| 208 
4022bfbaafd4
INSTALL: cosmetic fix in bullet point numbering
 Mychaela Falconia <falcon@freecalypso.org> parents: 
58diff
changeset | 34 5B: You are done! | 
| 56 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 35 | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 36 The host tool binaries will be installed in /opt/freecalypso/bin; you can | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 37 either add this directory to your PATH or make symlinks from /usr/bin or | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 38 /usr/local/bin or wherever. | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 39 | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 40 Dependencies | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 41 ============ | 
| 0 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 | 
| 397 
4477d28c77bc
INSTALL: update for the move-out of fc-lcdemu
 Mychaela Falconia <falcon@freecalypso.org> parents: 
262diff
changeset | 43 All FreeCalypso host tools are written in plain C and have absolutely no | 
| 
4477d28c77bc
INSTALL: update for the move-out of fc-lcdemu
 Mychaela Falconia <falcon@freecalypso.org> parents: 
262diff
changeset | 44 library dependencies beyond libc. In other words, they are very friendly to | 
| 
4477d28c77bc
INSTALL: update for the move-out of fc-lcdemu
 Mychaela Falconia <falcon@freecalypso.org> parents: 
262diff
changeset | 45 those who like bare bones minimalist systems. | 
| 0 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 | 
| 22 
aa20bdae9e53
doc/Compiling update: OpenSSL dependency eliminated, fc-lcdemu retired
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 47 The previous dependency on OpenSSL libraries for DES decryption of the factory | 
| 
aa20bdae9e53
doc/Compiling update: OpenSSL dependency eliminated, fc-lcdemu retired
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 48 IMEI record on the Pirelli DP-L10 has been eliminated by incorporating our own | 
| 
aa20bdae9e53
doc/Compiling update: OpenSSL dependency eliminated, fc-lcdemu retired
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 49 simple DES implementation (performance is not a concern for the one time | 
| 
aa20bdae9e53
doc/Compiling update: OpenSSL dependency eliminated, fc-lcdemu retired
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 50 operation of retrieving the factory IMEI) into our rvinterf/etmsync source, and | 
| 
aa20bdae9e53
doc/Compiling update: OpenSSL dependency eliminated, fc-lcdemu retired
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 51 the functions that require access to Pirelli's IMEI have now been integrated | 
| 
aa20bdae9e53
doc/Compiling update: OpenSSL dependency eliminated, fc-lcdemu retired
 Mychaela Falconia <falcon@freecalypso.org> parents: 
3diff
changeset | 52 into fc-fsio. | 
| 0 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 | 
| 397 
4477d28c77bc
INSTALL: update for the move-out of fc-lcdemu
 Mychaela Falconia <falcon@freecalypso.org> parents: 
262diff
changeset | 54 Previous versions of this FC host tools package included a UI development aid | 
| 
4477d28c77bc
INSTALL: update for the move-out of fc-lcdemu
 Mychaela Falconia <falcon@freecalypso.org> parents: 
262diff
changeset | 55 utility called fc-lcdemu which needs libX11 to compile and an X11 display to | 
| 
4477d28c77bc
INSTALL: update for the move-out of fc-lcdemu
 Mychaela Falconia <falcon@freecalypso.org> parents: 
262diff
changeset | 56 run; this utility has now been moved to a separate freecalypso-ui-dev | 
| 
4477d28c77bc
INSTALL: update for the move-out of fc-lcdemu
 Mychaela Falconia <falcon@freecalypso.org> parents: 
262diff
changeset | 57 repository and is no longer a part of the core FC host tools package. | 
| 
4477d28c77bc
INSTALL: update for the move-out of fc-lcdemu
 Mychaela Falconia <falcon@freecalypso.org> parents: 
262diff
changeset | 58 | 
| 475 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 59 CC= and CFLAGS= selection | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 60 ========================= | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 61 | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 62 Our Makefile hierarchy is set up to build with CC=gcc and CFLAGS=-O2 by default. | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 63 If you need to change either or both of these selections, you can do it by | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 64 adding CC= and/or CFLAGS= on the make invokation line, for example: | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 65 | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 66 make CC=mygcc CFLAGS="-g -O2 -whatever-options" | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 67 | 
| 262 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 68 libserial and Linux specifics | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 69 ============================= | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 70 | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 71 We have our own private library called libserial which contains our serial port | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 72 handling code (serial ports are what we use to talk to Calypso GSM devices), | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 73 and this library exists in several different versions. At the top level of our | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 74 source tree libserial is a symlink to one of libserial-* versions. | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 75 | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 76 Starting with fc-host-tools-r7, the default version of libserial (i.e., the | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 77 version to which the libserial symlink points in the official release source) | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 78 is libserial-newlnx. This version of libserial has the advantage of supporting | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 79 high GSM baud rates (see doc/High-speed-serial) with FTDI adapters without | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 80 needing a dirty patch to the in-kernel driver, but it comes at the price of | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 81 being very specific to Linux. If you would like to run FreeCalypso host tools | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 82 under FreeBSD, illumos or some other alternative-to-Linux OS, see the section | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 83 titled "Support for other Unix flavors" in the doc/High-speed-serial article. | 
| 
9ab5c14e5b38
INSTALL: libserial and Linux specifics documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
212diff
changeset | 84 | 
| 212 
abe21d7b1226
INSTALL: added blurb about target binaries in packaged releases
 Mychaela Falconia <falcon@freecalypso.org> parents: 
208diff
changeset | 85 Target binaries | 
| 
abe21d7b1226
INSTALL: added blurb about target binaries in packaged releases
 Mychaela Falconia <falcon@freecalypso.org> parents: 
208diff
changeset | 86 =============== | 
| 
abe21d7b1226
INSTALL: added blurb about target binaries in packaged releases
 Mychaela Falconia <falcon@freecalypso.org> parents: 
208diff
changeset | 87 | 
| 
abe21d7b1226
INSTALL: added blurb about target binaries in packaged releases
 Mychaela Falconia <falcon@freecalypso.org> parents: 
208diff
changeset | 88 If you are installing a packaged release of FreeCalypso host tools, there will | 
| 
abe21d7b1226
INSTALL: added blurb about target binaries in packaged releases
 Mychaela Falconia <falcon@freecalypso.org> parents: 
208diff
changeset | 89 be a number of prebuilt target binaries (code to be run on the Calypso ARM7 | 
| 
abe21d7b1226
INSTALL: added blurb about target binaries in packaged releases
 Mychaela Falconia <falcon@freecalypso.org> parents: 
208diff
changeset | 90 processor) in the target-bin directory; when you run make install as instructed | 
| 
abe21d7b1226
INSTALL: added blurb about target binaries in packaged releases
 Mychaela Falconia <falcon@freecalypso.org> parents: 
208diff
changeset | 91 above, these target binaries will be installed in /opt/freecalypso/target-bin. | 
| 
abe21d7b1226
INSTALL: added blurb about target binaries in packaged releases
 Mychaela Falconia <falcon@freecalypso.org> parents: 
208diff
changeset | 92 Otherwise, you will need to compile them yourself using an ARM7 toolchain as | 
| 
abe21d7b1226
INSTALL: added blurb about target binaries in packaged releases
 Mychaela Falconia <falcon@freecalypso.org> parents: 
208diff
changeset | 93 detailed below. | 
| 
abe21d7b1226
INSTALL: added blurb about target binaries in packaged releases
 Mychaela Falconia <falcon@freecalypso.org> parents: 
208diff
changeset | 94 | 
| 0 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 Building and installing the ARM7 toolchain | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 ========================================== | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 The current "official" GNU ARM toolchain for FreeCalypso consists of | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 binutils-2.21.1, gcc-4.5.4 and newlib-2.0.0 with a specific set of patches and | 
| 3 
6a029ad28212
doc/Compiling: updated for the split between freecalypso-tools and Citrine
 Mychaela Falconia <falcon@freecalypso.org> parents: 
0diff
changeset | 100 build configuration options. This toolchain is used to compile target-utils in | 
| 411 
8b8e723f5699
INSTALL: updates regarding the ARM7 gcc toolchain
 Mychaela Falconia <falcon@freecalypso.org> parents: 
397diff
changeset | 101 this package as well as our separately-maintained experimental FC Selenite | 
| 
8b8e723f5699
INSTALL: updates regarding the ARM7 gcc toolchain
 Mychaela Falconia <falcon@freecalypso.org> parents: 
397diff
changeset | 102 firmware. (Our production firmwares are currently built with TI's TMS470 | 
| 
8b8e723f5699
INSTALL: updates regarding the ARM7 gcc toolchain
 Mychaela Falconia <falcon@freecalypso.org> parents: 
397diff
changeset | 103 toolchain instead.) Build it as follows: | 
| 0 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 104 | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 105 1. Download these 3 source tarballs for the standard GNU+newlib components: | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 106 | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 107 binutils-2.21.1a.tar.bz2 | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 108 gcc-core-4.5.4.tar.bz2 | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 109 newlib-2.0.0.tar.gz | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 110 | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 111 2. Run the build+install.sh script in the toolchain directory. Read the | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 112 comments in the script first for the usage instructions. | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 113 | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 114 The toolchain thus built will need to be in your PATH before you can compile | 
| 411 
8b8e723f5699
INSTALL: updates regarding the ARM7 gcc toolchain
 Mychaela Falconia <falcon@freecalypso.org> parents: 
397diff
changeset | 115 target-utils or FC Selenite. The officially recommended install location for | 
| 
8b8e723f5699
INSTALL: updates regarding the ARM7 gcc toolchain
 Mychaela Falconia <falcon@freecalypso.org> parents: 
397diff
changeset | 116 this toolchain is /opt/freecalypso/gcc. | 
| 0 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 117 | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 118 Please note: the toolchain that is prescribed for FreeCalypso as above is | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 119 *believed* to be equivalent to the one used by OsmocomBB, but there are no | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 120 guarantees. Use any other toolchain at your own risk. | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 121 | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 122 Compiling target-utils | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 ====================== | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 | 
| 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 Running 'make' in the target-utils tree with the ARM7 toolchain present in your | 
| 56 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 126 PATH will result in several target binaries being built, including compalstage | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 127 and loadagent which are needed in order to use FreeCalypso loadtools. Run | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 128 'make install' to install these target binaries in /opt/freecalypso/target-bin, | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 129 which is where loadtools will look for them. | 
| 0 
e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 130 | 
| 56 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 131 Run 'make all' in target-utils to build some additional target code pieces that | 
| 
4213cf6536fa
doc/Compiling: update for the move to /opt/freecalypso
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 132 are needed only for development and only very rarely. | 
| 475 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 133 | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 134 Staged installs | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 135 =============== | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 136 | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 137 As already explained above, our FC host tools need to be installed under | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 138 /opt/freecalypso on your system in order to function correctly, and this runtime | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 139 location is not changeable. However, some users have requested an ability to | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 140 do a staged install: have the 'make install' operation install the finished | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 141 tree of files in some staging location, with the expectation that it will be | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 142 subsequently moved to /opt/freecalypso by some other mechanism. One use case | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 143 that has been presented to us was automated building of binary distribution | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 144 packages on a build host where writing to /opt/freecalypso is not allowed. | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 145 | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 146 If you need to make a staged install of this sort, you can do it like this: | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 147 | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 148 make install INSTALL_PREFIX=/home/me/my-fc-staging-area | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 149 | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 150 Please note that this INSTALL_PREFIX= scheme changes *only* the location where | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 151 'make install' will deposit the installable files; it does NOT change the | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 152 location where our programs will look for other programs and helper files: the | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 153 latter location is hard-coded as /opt/freecalypso is bazillion places throughout | 
| 
c08ff097b2aa
CHANGES and INSTALL: staged install ability documented
 Mychaela Falconia <falcon@freecalypso.org> parents: 
435diff
changeset | 154 our code base. | 
