oopsiwhoospi fixed xd
Signed-off-by: hax <hax@lainlounge.xyz>
This commit is contained in:
parent
ebe1e8ec27
commit
0d42f3aff3
1 changed files with 23 additions and 23 deletions
46
README.md
46
README.md
|
@ -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.
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue