trxcon/l1ctl_link.c: refactor l1ctl_link_init()
[osmocom-bb.git] / src / README.building
blobd7cc7944c0221d3fe002abbdad3aca82ecfd7e81
1 == How to build OsmocomBB? ==
3 === Prerequisites ===
5 We assume you are building on a GNU/Linux host system such as Debian
6 GNU/Linux.  Successful builds have also been reported using MacOS X
7 and the Cygwin environment for MS Windows, but we do not officially support
8 this.
10  * Make sure you have compiled and installed a recent version of
11    libosmocore. See https://osmocom.org/projects/libosmocore/wiki/Libosmocore
13    DO NOT USE the libosmocore version embedded in this git tree. This
14    is a special version used internally and MUST NOT be used as
15    system-wide libosmocore.
17  * Get a GNU toolchain (gcc/binutils) for ARM (e.g. from http://gnuarm.com/)
18    See https://osmocom.org/projects/baseband/wiki/GnuArmToolchain
20  * Set your path to include the arm-elf-* executables of your toolchain
22  * call 'make' in this (the src) subdirectory
24 === Details ===
26 The master Makefile will build:
28  * libosmocore for the target (ARM)
29  * osmocon and layer23 executables for the host (linking libosmocore)
30  * the actual target firmware images (in src/target/firmware/board/*/*.bin)
33 == Transmitting ==
35 For safety reasons, all code that can enable the transmitter on the phone is
36 disabled in the default builds.  Plese check the src/target/firmware/Makefile
37 for the "#CFLAGS += -DCONFIG_TX_ENABLE" line.
39 Please notice that GSM operates in licensed spectrum and in most jurisdictions
40 you will need a license from a regulatory authority to transmit.