summaryrefslogtreecommitdiff
path: root/misc/buildroot/ReleaseNotes
blob: 7178cd0ee5400804aac37e7c4be42b4d71e7f776 (plain) (blame)
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
ReleaseNotes v1.13
==================

Supported GCC Toolchains
------------------------

This is a highly hacked up version of the buildroot (see
http://buildroot.uclibc.org/). It has been hacked so that it
can be used to build the following NuttX-compatible toolchains:

  o arm-elf toolchain needed for use with the TI C5471 (ARM7TDMI),
    NXP LPC214x (ARM7TMDI), STMicro STR71x (ARM7TDMI), Freescale
    i.MX1 (ARM920T), and TI DM320 (ARM926EJ-S) provided with the
    NuttX releases.

    NXFLAT toolchain for use with the ARM7 and ARM9.

  o arm-eabi ARM Cortex-M0 toolchain needed for use with
    the NUC120 and Freescale KL ports provided with the NuttX releases.

  o arm-elf and arm-eabi ARM Cortex-M3 (thumb2) toolchain needed
    for use with the Freescale Kinetis, Luminary LM3Sxx, NXP LPC17xx,
    NXP LPC43xx, Atmel SAM3/4, and STMicro STM32 ports provided with
    the NuttX releases.

    NXFLAT toolchain for use with the ARM Cortex-M3/4.

  o arm-elf and arm-eabi ARM Cortex-A5/A8 toolchain needed
    for use with the Atmel SAMA5D3x and Allwinner A10 ports provided
    with the NuttX releases.

    NXFLAT toolchain for use with the ARM Cortex-A5/8.

  o avr-elf toolchain needed for use with the ATmega128 ports
    provided with the NuttX releases.

  o H8/300 toolchain (not currently used in any NuttX
    configuration).

  o i486-elf toochain.  Why would you want such a thing?  On Linux, of 
    course, such a thing is not needed because you can use the installed GCC 
    to build i486 ELF binaries.  But that will not work under Cygwin!  The
    Cygwin toolchain (and probably MinGW), build DOS MZ format executables
    (i.e., .exe files).  That is probably not usable for most NuttX targets.
    Instead, you should use this i486-elf-gcc to generate true ELF binaries
    under Cygwin.

  o bfin-elf toolchain not currently used in any NuttX
    configuration).

  o m68k-elf toolchain (not currently used in any NuttX
    configuration).

  o m68hc11-elf toolchain (not currently used in any NuttX
    configuration).

  o m68hc12-elf toolchain. (NOT RECOMMENDED for hcs12;
    Use m9s12x-elf toolchain)

  o m9s12x-elf toolchain Supports Freescale m9s12x using
    binutils 2.18 and gcc 3.3.6 and patches available from
    http://www.msextra.com/tools courtesy of James Cortina.

  o m32c-elf toolchain needed for the Renesas M16C NuttX port.

  o sh-elf toolchain needed for the SH-1 NuttX port.

Supported tool versions include:

  o gcc-3.3.6 + binuils-2.18 (for m9s12x).
  o gcc-3.4.6 + binutils-2.17
  o gcc-4.2.4 + binutils-2.19
  o gcc-4.3.3 + binutils-2.19.1
  o gcc-4.5.2 + binutils-2.21
  o gcc-4.6.3 + binutils-2.22
  o gcc-4.8.2 + binutils-2.24

See the ChangeLog of features/architectures added in v1.13.

Installation instructions:

  - You must have already configured Nuttx in <some-dir>/nuttx
  - download the buildroot package into <some-dir>
  - unpack -cd <some-dir>/buildroot
  - cp configs/arm-defconfig .config
  - make oldconfig
  - make

See configs/README.txt for other configurations and for more detailed
instructions.  If your NuttX installation resides at a different location
then:

  - make menuconfig

And set the "Path to the NuttX root directory" appropriately.

Other Tools
-----------

In addition to the GCC toolchain, these tools may also be built by the
buildroot package:

  - genromfs:  Used to generate ROMFS file system images for NuttX

  - kconfig-frontends:  These tools are required by the NuttX
    configuration system.

  - NXFLAT tools:  Special tools to build NXFLAT binary images

  - sstrip: Used internally by the build root logic

Version Information
-------------------

buildroot release 1.13 corresponds to GIT tag nuttx-6.33.

NXFLAT Toolchain Build
----------------------

You can select to build the NXFLAT toolchain with GCC by selecting
the NXFLAT toolchin during the configuration process(you can also
select omit building GCC with and only build the NXFLAT toolchain
for use with your own GCC toolchain.

NOTES:
  - NFFLAT is only available for ARM and Cortex-M3 architectures.
  - The GCC 4.6.3 will not work with NXFLAT.  See "Toolchain Compatibility
    Problem" at http://www.nuttx.org/doku.php?id=wiki:vfs:nxflat for details.
  - It has been reported to me that the issues with GCC 4.6.3 and NXFLAT
    has been corrected in subsequent versions, but I have not personally
    verified that.