code_analyzer/README.md

43 lines
862 B
Markdown
Raw Permalink Normal View History

2021-11-08 15:32:39 +01:00
# Code analyzer
2021-11-08 15:33:20 +01:00
## Sujet
2022-01-07 12:52:33 +01:00
Un programme peut être considéré comme un graphe orienté où chaque fonction est
un noeud. Prendre un programme important (plusieurs dizaines de fichiers,
plusieurs dizaines de milliers de lignes de code) et lanalyser sous la forme
dun graphe (Mco, Vec). On doit chercher les composantes connexes et les
cycles.
2022-01-04 13:12:29 +01:00
## Programmes testés
2022-01-07 12:52:33 +01:00
* [st](https://st.suckless.org/)
* [dwm](https://dwm.suckless.org/)
* [neovim](https://github.com/neovim/neovim)
* code-analyzer
* test.c
## Compilation et execution
### Compilation
```sh
2022-01-14 22:22:57 +01:00
$ make fclean; make
2022-01-07 12:52:33 +01:00
```
### Execution
```sh
$ ./code-analyzer --help
$ ./code-analyzer -p ./src/ -c --print-vec --cycles-vec
```
### Generation de pdf
Pour generer un pdf du graphe, il faut avoir installé `graphviz`.
```sh
$ make graph
```
Cela va genere le fichier **graph.pdf**.