Binwalk's core features will work out of the box without any additional dependencies. However, to take advantage of binwalk's more advanced capabilities, multiple supporting utilities/packages need to be installed.
Binwalk's core features will work out of the box without any additional dependencies. However, to take advantage of binwalk's more advanced capabilities, multiple supporting utilities/packages need to be installed (see the Dependencies section below).
To ease "dependency hell", a shell script named `deps.sh` is included which attempts to install all required dependencies for Debian and RedHat based systems:
```bash
$ ./deps.sh
```
If you are running a different system, or prefer to install these dependencies manually, see the Dependencies section below.
Dependencies
Dependencies
============
============
The following dependencies are only required for optional binwalk features, such as file extraction and graphing capabilities. Unless otherwise specified, these dependencies are available from most Linux package managers.
The following run-time dependencies are only required for optional binwalk features, such as file extraction and graphing capabilities. Unless otherwise specified, these dependencies are available from most Linux package managers.
Binwalk uses [pyqtgraph](http://www.pyqtgraph.org) to generate graphs and visualizations, which requires the following:
Binwalk uses [pyqtgraph](http://www.pyqtgraph.org) to generate graphs and visualizations, which requires the following:
Alternatively, installation of all bundled libraries can be disabled at build time:
Alternatively, installation of all bundled libraries can be disabled at build time:
...
@@ -79,7 +70,7 @@ Alternatively, installation of all bundled libraries can be disabled at build ti
...
@@ -79,7 +70,7 @@ Alternatively, installation of all bundled libraries can be disabled at build ti
$ ./configure --disable-bundles
$ ./configure --disable-bundles
```
```
If a bundled library is disabled, the equivalent library must be installed to a standard system library location (e.g., `/usr/lib`, `/usr/local/lib`, etc) in order for binwalk to function properly.
If a bundled library is disabled, the equivalent library must be installed to a standard system library location (e.g., `/usr/lib`, `/usr/local/lib`, etc) in order for binwalk to find it at run time.
**Note:** If the bundled libmagic library is not used, be aware that:
**Note:** If the bundled libmagic library is not used, be aware that:
...
@@ -116,7 +107,7 @@ $ make ida
...
@@ -116,7 +107,7 @@ $ make ida
Uninstallation
Uninstallation
==============
==============
The following command will remove binwalk from your system. Note that this will *not* remove manually installed packages, or utilities installed via deps.sh:
The following command will remove binwalk from your system. Note that this will *not* remove manually installed packages or tools: