Skip to main content

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.

  1. List all shared library files needed to execute supplied inputs

  2. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lddcollect-0.2.0.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

lddcollect-0.2.0-py2.py3-none-any.whl (12.3 kB view details)

Uploaded Python 2 Python 3

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

Hashes for lddcollect-0.2.0.tar.gz
Algorithm Hash digest
SHA256 440e6f3d850c2d601bf83174f380bc421bd80fdbd00bd57bae539bbaaf532f8c
MD5 412d33f5e09473a2f68ee370260debb4
BLAKE2b-256 b6139971709c6436cadc9be65533ab9ddffe6b4e02fa5cbfd2343f2d0291d05e

See more details on using hashes here.

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

Hashes for lddcollect-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a26693c12fe7e9026acaf50d52cb7b02fa1aa82438aa989808ba9ee2acfa131e
MD5 15e703c72d12ae516cc7217a7c17fb3e
BLAKE2b-256 0bf80b66a6a41995ece30036b33756f8873b5e40ff573700faeb39598649c597

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page