Skip to content

Commit 4a6005c

Browse files
committed
docs: update README.md
1 parent 429b076 commit 4a6005c

2 files changed

Lines changed: 19 additions & 18 deletions

File tree

README.md

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,13 @@ Generate C++ headers from DWARF Debugging Information Format (DWARF).
88

99
> \[!WARNING]
1010
> This tool requires binaries that contain **DWARF debug information** in order to generate headers.
11-
> Please make sure that your input binary includes DWARF debug info, which is often not available publicly for proprietary software.
11+
> Make sure your input binary includes DWARF debug info, which is often not publicly available in proprietary software.
1212
1313
## Installation
1414

15-
### Build from Sources
15+
### Build from Source
1616

17-
Since dwarf2cpp uses **pybind11** to use LLVM's DWARF DebugInfo module from Python, you need a working C++ toolchain to
18-
build it:
17+
Since dwarf2cpp uses **pybind11** to access LLVM's DWARF DebugInfo module from Python, you need a working C++ toolchain to build it:
1918

2019
* On Windows: **MSVC (Visual Studio Build Tools)**
2120
* On Linux: **GCC (g++)**
@@ -27,7 +26,11 @@ cd dwarf2cpp
2726
pip install .
2827
```
2928

30-
After installation, the tool can be invoked using `python -m dwarf2cpp`.
29+
After installation, run the tool with:
30+
31+
```
32+
python -m dwarf2cpp
33+
```
3134

3235
### Prebuilt Wheels
3336

@@ -43,26 +46,24 @@ locally.
4346
pip install dwarf2cpp-<version>-<platform>.whl
4447
```
4548

46-
This option is recommended if you simply want to use `dwarf2cpp` without dealing with compiler or LLVM setup.
49+
This is the recommended option if you only want to use `dwarf2cpp` without setting up a compiler or LLVM.
4750

4851
## Usage
4952

5053
```
5154
Usage: python -m dwarf2cpp [OPTIONS] PATH
5255
5356
Options:
54-
--base-dir TEXT Base directory for compilation. [required]
57+
--base-dir TEXT Base directory used during compilation. [required]
5558
-o, --output-path PATH Output directory for generated files. Defaults to
5659
'out' inside the input file's directory.
5760
--help Show this message and exit.
5861
```
5962

60-
The `PATH` argument should point to a binary that contains DWARF debug information.
63+
The `PATH` argument must point to a binary containing DWARF debug information.
6164

62-
* `--base-dir` should point to the root directory used during compilation. This helps resolve relative include paths
63-
when reconstructing headers.
64-
* `--output-path` lets you control where generated headers will be stored. If not provided, the tool creates an `out/`
65-
folder next to the input file.
65+
* `--base-dir` should point to the root directory used during compilation. This helps resolve relative include paths when reconstructing headers.
66+
* `--output-path` controls where the generated headers are stored. If not specified, the tool creates an `out/` folder next to the input file.
6667

6768
## Examples
6869

@@ -88,14 +89,14 @@ Typical use cases include:
8889

8990
## Limitations
9091

91-
* Generated headers may not always compile out-of-the-box. Manual fixes may be necessary.
92-
* Templates, inline functions, and macros cannot always be reconstructed faithfully.
92+
* Generated headers may not compile out-of-the-box. Manual adjustments may be required.
93+
* Templates, inline functions, and macros cannot always be reconstructed accurately.
9394
* Only works with binaries compiled with DWARF debug info. Stripped or release binaries will not work.
94-
* Only trivially tested. It may not work on any binary with DWARF debug info.
95+
* Only trivially tested. It may fail with certain binaries.
9596

9697
## Acknowledgements
9798

98-
This project makes use of the following open source technologies:
99+
This project makes use of the following open-source technologies:
99100

100101
* [LLVM Project](https://llvm.org/) - DWARF DebugInfo parser.
101102
* [pybind11](https://pybind11.readthedocs.io/) - C++/Python bindings.
@@ -109,7 +110,7 @@ This project makes use of the following open source technologies:
109110
110111
> [!WARNING]
111112
> Do not redistribute or publish headers generated from proprietary binaries without proper rights.
112-
> Respect the terms of service and licensing agreements for any binaries you analyse.
113+
> Respect the terms of service and licensing agreements of any binaries you analyse.
113114
114115
## Contributing
115116

src/dwarf2cpp/cli.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
@click.command()
1818
@click.argument("path", type=click.Path(exists=True, path_type=Path))
19-
@click.option("--base-dir", type=str, required=True, help="Base directory for compilation.")
19+
@click.option("--base-dir", type=str, required=True, help="Base directory used during compilation.")
2020
@click.option(
2121
"--output-path",
2222
"-o",

0 commit comments

Comments
 (0)