docs/0 - Table of content.txt
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Jan 03 22:57:25 2012 +0100 (2012-01-03)
changeset 2936 2dfea349d307
parent 2569 4aba7a7337b0
permissions -rw-r--r--
cc/gcc: build core compilers for canadian

Currently, we rely on an existing external cross-compiler targetting
the target, to build the C library.

This can pause quite a few problems if that compiler is different from
the one we are building, because it could introduce some ABI issues.

This patch removes this dependency, by building the core compilers
as we do for standard cross, and also by building the binutils and
gcc, for running on the build machine.

This means we no longer need to offer the cross-sompiler selection in
the menuconfig.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@2076
     1
File.........: 0 - Table of content.txt
yann@2908
     2
Copyright....: (C) 2010 Yann E. MORIN <yann.morin.1998@free.fr>
yann@2076
     3
License......: Creative Commons Attribution Share Alike (CC-by-sa), v2.5
yann@2076
     4
yann@2076
     5
yann@2076
     6
Table Of Content  /
yann@2076
     7
_________________/
yann@2076
     8
yann@2076
     9
yann@2076
    10
1- Introduction
yann@2076
    11
    - History
yann@2076
    12
    - Referring to crosstool-NG
yann@2076
    13
yann@2076
    14
2- Installing crosstool-NG
yann@2076
    15
    - Install method
yann@2076
    16
    - The hacker's way
yann@2076
    17
    - Preparing for packaging
yann@2076
    18
    - Shell completion
yann@2076
    19
    - Contributed code
yann@2076
    20
yann@2076
    21
3- Configuring a toolchain
yann@2076
    22
    - Interesting config options
yann@2076
    23
    - Re-building an existing toolchain
yann@2076
    24
    - Using as a backend for a build-system
yann@2076
    25
yann@2076
    26
4- Building the toolchain
yann@2076
    27
    - Stopping and restarting a build
yann@2076
    28
    - Testing all toolchains at once
yann@2076
    29
    - Overriding the number of // jobs
yann@2076
    30
    - Note on // jobs
yann@2076
    31
    - Tools wrapper
yann@2076
    32
yann@2076
    33
5- Using the toolchain
yann@2076
    34
    - The 'populate' script
yann@2076
    35
yann@2076
    36
6- Toolchain types
yann@2076
    37
    - Seemingly-native toolchains
yann@2076
    38
yann@2076
    39
7- Contributing
yann@2076
    40
    - Sending a bug report
yann@2076
    41
    - Sending patches
yann@2076
    42
yann@2076
    43
8- Internals
yann@2076
    44
    - Makefile front-end
yann@2076
    45
    - Kconfig parser
yann@2076
    46
    - Architecture-specific
yann@2076
    47
    - Adding a new version of a component
yann@2076
    48
    - Build scripts
yann@2076
    49
yann@2321
    50
9 - How is a toolchain constructed?
yann@2321
    51
    - I want a cross-compiler! What is this toolchain you're speaking about?
yann@2321
    52
    - So, what are those components in a toolchain?
yann@2321
    53
    - And now, how do all these components chained together?
yann@2321
    54
    - So the list is complete. But why does crosstool-NG have more steps?
yann@2321
    55
yann@2076
    56
A- Credits
yann@2076
    57
yann@2076
    58
B- Known issues
yann@2385
    59
    - gcc is not found, although I *do* have gcc installed
yann@2385
    60
    - The extract and/or path steps fail under Cygwin
yann@2385
    61
    - uClibc fails to build under Cygwin
yann@2385
    62
    - On 64-bit build systems, the glibc (possibly eglibc too) build
yann@2385
    63
      fails for 64-bit targets, because it can not find libgcc
yann@2569
    64
    - libtool.m4: error: problem compiling FC test program
yann@2569
    65
    - unable to detect the exception model
yann@2569
    66
    - configure: error: forced unwind support is required
yann@2569
    67
    - glibc start files and headers fail with: [/usr/include/limits.h] Error 1
yann@2076
    68
yann@2076
    69
C- Misc. tutorials
yann@2076
    70
    - Using crosstool-NG on FreeBSD (and other *BSD)
yann@2076
    71
    - Using crosstool-NG on MacOS-X
yann@2077
    72
    - Using Mercurial to hack crosstool-NG