List files/debian packages used by a Linux binary/dll
Project description
lddcollect
List all shared library files needed to run ELF executable or load elf library. On Debian based systems can also list packages needed instead of library files.
Typical use case: you have a locally compiled application or library with large number of dependencies, and you want to share this binary. This tool will list all shared libraries needed to run it. You can then create a minimal rootfs with just the needed libraries. Alternatively you might want to know what packages need to be installed to run this application (Debian based systems only for now).
Installation
This tool is Python (3.6+) based. It can be installed with pip:
pip install lddcollect
Usage
lddcollect --help Usage: lddcollect [OPTIONS] [LIBS_OR_DIR]... Find all other libraries and optionally Debian dependencies listed applications/libraries require to run. Two ways to run: 1. Supply single directory on input - Will locate all dynamic libs under that path - Will print external libs only (will not print any input libs that were found) 2. Supply paths to individual ELF files on a command line - Will print input libs and any external libs referenced Prints libraries (including symlinks) that are referenced by input files, one file per line. When --dpkg option is supplied, print: 1. Non-dpkg managed files, one per line 2. Separator line: ... 3. Package names, one per line Options: --dpkg / --no-dpkg Lookup dpkg libs or not, default: no --json Output in json format --verbose Print some info to stderr --ignore-pkg TEXT Packages to ignore (list package files instead) --help Show this message and exit.
There are two modes of operation.
List all shared library files needed to execute supplied inputs
List all packages you need to apt-get install to execute supplied inputs as well as any shared libraries that are needed but are not under package management.
In the first mode it is similar to ldd, except referenced symbolic links to libraries are also listed. In the second mode shared library dependencies that are under package management are not listed, instead the name of the package providing the dependency is listed.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file lddcollect-0.2.0.tar.gz
.
File metadata
- Download URL: lddcollect-0.2.0.tar.gz
- Upload date:
- Size: 11.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.6.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 440e6f3d850c2d601bf83174f380bc421bd80fdbd00bd57bae539bbaaf532f8c |
|
MD5 | 412d33f5e09473a2f68ee370260debb4 |
|
BLAKE2b-256 | b6139971709c6436cadc9be65533ab9ddffe6b4e02fa5cbfd2343f2d0291d05e |
File details
Details for the file lddcollect-0.2.0-py2.py3-none-any.whl
.
File metadata
- Download URL: lddcollect-0.2.0-py2.py3-none-any.whl
- Upload date:
- Size: 12.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.6.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a26693c12fe7e9026acaf50d52cb7b02fa1aa82438aa989808ba9ee2acfa131e |
|
MD5 | 15e703c72d12ae516cc7217a7c17fb3e |
|
BLAKE2b-256 | 0bf80b66a6a41995ece30036b33756f8873b5e40ff573700faeb39598649c597 |