blob: c5febe5e070ac1eccc5117443807929ae68a808a (
plain)
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
|
:PROPERTIES:
:ID: 08a7f601-d042-4d24-b5f7-701f2195a016
:END:
#+title: Компиляторы
GCC и LLVM.
Компиляторы компилирует в бинарный файл. Бинарный файл имеет свой
[[id:246de455-9841-4fc0-b482-b42b165666a9][бинарный формат]].
Программы:
- objdump
- readelf
- strip :: удаляет неиспользуемую информацию (например сиволы дебага) из
бинарника, уменьшая его размер.
Дебагер:
- GDB
- Valgrind
Форматы бинарников:
- Elf (используется в GNU)
- Dwarf (формат дебагинга)
- Stubs (формат дебагинга)
[[id:fe003684-3c18-4ee4-8b0b-c5fdf1cb9e9d][Построение компиляторов]]
** Построение
- [[http://www.craftinginterpreters.com/contents.html][Crafting Interpreters]]
** Компиляторы
- GCC
- LLVM
- https://ecs.openbrace.org/ (Oberon, C++, FALSE)
|