oopsiwhoospi fixed xd

Signed-off-by: hax <hax@lainlounge.xyz>
This commit is contained in:
h@x 2025-01-05 18:25:31 +00:00
parent ebe1e8ec27
commit 0d42f3aff3

View file

@ -13,7 +13,7 @@ This project generates a call graph from an executable binary compiled with debu
- Includes a minimal C example program for testing.
- Validates input for robustness and usability.
## Prerequisites 🛠️📝🔌
## Prerequisites
### Software Requirements 🌐🛠️📊
- `gdb` (GNU Debugger)
- `awk` (or `gawk` for enhanced features)
@ -34,13 +34,13 @@ project/
```
## Installation 🔄🎮🌐
1. Clone the repository: 📦🔗🌍
1. Clone the repository:
```bash
git clone <repository-url>
cd project
```
2. Make the scripts executable: 🌧️🛠️🔧
2. Make the scripts executable: 🛠️🔧
```bash
chmod +x callgraph.sh generate_graph.awk
```
@ -51,41 +51,41 @@ project/
```
## Usage 🛠️🔗🔄
### 1. Compile the Example Program 🔧🔄🔖
Compile the included `example.c` program with debugging symbols: 🔧🏋️‍♂️🎮
### 1. Compile the Example Program
Compile the included `example.c` program with debugging symbols:
```bash
gcc -g -o example example.c
```
### 2. Generate the Call Graph 🎮🌄🏋️‍♂️
Run the shell script with the compiled binary: 📦🔍🎮
Run the shell script with the compiled binary:
```bash
./callgraph.sh ./example > callgraph.txt
```
### 3. Generate the DOT Graph 🌍🔍📦
Use the AWK script to convert the call graph data into a DOT file: 🔗🔦🎮
Use the AWK script to convert the call graph data into a DOT file:
```bash
./generate_graph.awk callgraph.txt > callgraph.dot
```
### 4. Visualize the Graph (Optional) 📝🎮🎨
Render the DOT file using Graphviz: 🔄🌧️🎮
Render the DOT file using Graphviz:
```bash
dot -Tpng callgraph.dot -o callgraph.png
```
Open `callgraph.png` to view the generated graph. 🎨🎮🌄
Open `callgraph.png` to view the generated graph. 🎨🌄
## Example 🎮🌟🌄
### Input (Function Call Data) 🔦🔄🌧️
## Example 🌟🌄
### Input (Function Call Data)
```bash
foo bar
bar baz
baz qux
```
### Output (DOT Format) 🌧️🎨🎮
### Output (DOT Format)
```dot
digraph G {
"foo" -> "bar";
@ -94,32 +94,32 @@ digraph G {
}
```
### Visualized Graph 🎨🎮🔍
### Visualized Graph
The graph will show the relationships between functions as directed edges. 🔧🎨🌧️
## Contributing 🌟🌈🌄
1. Fork the repository. 🌧️📝🔧
2. Create a new branch: 🎮🔄🌟
## Contributing 🌟🌈
1. Fork the repository.
2. Create a new branch:
```bash
git checkout -b feature-name
```
3. Make your changes and commit: 🌧️🎮🔗
3. Make your changes and commit:
```bash
git commit -m "Add feature"
```
4. Push to your branch: 🌟📝🎨
4. Push to your branch:
```bash
git push origin feature-name
```
5. Open a pull request. 🎮🔧🔦
5. Open a pull request.
## License 🌄🔍🎮
This project is licensed under the MIT License. See the LICENSE file for details. 🌟🔄🌧️
This project is licensed under the AGPL License. See the LICENSE file for details.
## Acknowledgments 🌟🔗🔧
- The GNU Project for `gdb` and `gcc`. 📝🎨🌄
- Graphviz for the graph visualization tools. 🌧️🎨🌄
- The GNU Project for `gdb` and `gcc`.
- Graphviz for the graph visualization tools.
## Contact 🌐📦🌎
For questions or feedback, please open an issue in the repository. 🔄🌟🎨
For questions or feedback, please open an issue in the repository.