toc update + smal text correction
This commit is contained in:
26
000-toc.md
26
000-toc.md
@@ -41,16 +41,22 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Chapitre 3 — Outils et chaîne de compilation
|
## [Chapitre 3](./ch003-ctools.md) — Outils et chaîne de compilation
|
||||||
3.1. Compilateurs : gcc, clang, autres
|
3.1. [Compilateurs : rôle et implémentations](./ch003-ctools.md)
|
||||||
3.2. Préprocesseur, compilation, assemblage, édition de liens
|
3.2. [Étapes de la chaîne de compilation](./ch003-ctools.md#32-étapes-de-la-chaîne-de-compilation)
|
||||||
3.3. Fichiers source, objets, exécutables
|
3.3. [Assembleur utilisé selon la toolchain](./ch003-ctools.md#33-assembleur-utilisé-selon-la-toolchain)
|
||||||
3.4. Warnings, erreurs, diagnostics
|
3.4. [Fichiers générés](./ch003-ctools.md#34-fichiers-générés)
|
||||||
3.5. Options importantes du compilateur
|
3.5. [Warnings et erreurs](./ch003-ctools.md#35-warnings-et-erreurs)
|
||||||
3.6. Standards de compilation (`-std=c99`, `-std=c11`, etc.)
|
3.6. [Options du compilateur](./ch003-ctools.md#36-options-du-compilateur)
|
||||||
3.7. Fichiers de debug
|
3.7. [Fichiers de debug](./ch003-ctools.md#37-informations-de-debug)
|
||||||
3.8. Compilation séparée
|
3.8. [Compilation séparée](./ch003-ctools.md#38-compilation-séparée)
|
||||||
3.9. Compilation croisée
|
3.9. [Compilation croisée](./ch003-ctools.md#39-compilation-croisée)
|
||||||
|
3.10 [Linker](./ch003-ctools.md#310-linker)
|
||||||
|
3.11 [Symboles](./ch003-ctools.md#311-symboles)
|
||||||
|
3.12 [Formats binaires](./ch003-ctools.md#312-formats-binaires)
|
||||||
|
3.13 [ABI (introduction)](./ch003-ctools.md#313-abi-introduction)
|
||||||
|
3.14 [Linker script](./ch003-ctools.md#314-linker-script)
|
||||||
|
3.15 [Résumé](./ch003-ctools.md#315-résumé)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -37,8 +37,6 @@ Traite :
|
|||||||
- #define
|
- #define
|
||||||
- #ifdef
|
- #ifdef
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Exemple :
|
Exemple :
|
||||||
|
|
||||||
```c
|
```c
|
||||||
@@ -248,9 +246,7 @@ arm-none-eabi-gcc main.c
|
|||||||
|
|
||||||
## 3.10 Linker
|
## 3.10 Linker
|
||||||
|
|
||||||
Le linker combine les objets.
|
Le linker combine les objets. Il :
|
||||||
|
|
||||||
Il :
|
|
||||||
- fusionne les sections
|
- fusionne les sections
|
||||||
- résout les symboles
|
- résout les symboles
|
||||||
- construit le binaire
|
- construit le binaire
|
||||||
@@ -284,9 +280,9 @@ Le linker associe :
|
|||||||
|
|
||||||
### Le binaire final a un format.
|
### Le binaire final a un format.
|
||||||
|
|
||||||
- ELF (Linux)
|
- **ELF** (Linux)
|
||||||
- PE (Windows)
|
- **PE** (Windows)
|
||||||
- Mach-O (macOS)
|
- **Mach-O** (macOS)
|
||||||
|
|
||||||
|
|
||||||
### Contenu :
|
### Contenu :
|
||||||
@@ -320,9 +316,7 @@ Linux x86_64 :
|
|||||||
Windows x86_64 :
|
Windows x86_64 :
|
||||||
- rcx, rdx, r8
|
- rcx, rdx, r8
|
||||||
|
|
||||||
---
|
**Même CPU ≠ même ABI**
|
||||||
|
|
||||||
Même CPU ≠ même ABI
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -339,8 +333,6 @@ SECTIONS
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
Utilisation
|
Utilisation
|
||||||
- embarqué
|
- embarqué
|
||||||
- systèmes bas niveau
|
- systèmes bas niveau
|
||||||
|
|||||||
Reference in New Issue
Block a user