lief 0.17.6


pip install lief

  Latest version

Released: Mar 18, 2026


Meta
Author: Romain Thomas
Requires Python: >=3.8

Classifiers

Development Status
  • 4 - Beta

Programming Language
  • Python :: 3
  • C++

Topic
  • Software Development :: Libraries

About

The purpose of this project is to provide a cross platform library that can parse, modify and abstract ELF, PE and MachO formats.

Main features:

  • Parsing: LIEF can parse ELF, PE, MachO, OAT, DEX, VDEX, ART and provides an user-friendly API to access to format internals.

  • Modify: LIEF enables to modify some parts of these formats

  • Abstract: Three formats have common features like sections, symbols, entry point… LIEF factors them.

  • API: LIEF can be used in C, C++, Python and Rust

LIEF Extended:

  • DWARF/PDB Support

  • Objective-C Metadata

  • dyld shared cache

Checkout: https://lief.re/doc/latest/extended/intro.html for the details

Getting Started

$ pip install lief
import lief

elf = lief.ELF.parse("/bin/ls")
for section in elf.sections:
    print(section.name, len(section.content))

pe = lief.PE.parse("cmd.exe")
for imp in pe.imports:
    print(imp.name)

fat = lief.MachO.parse("/bin/dyld")
for macho in fat:
    for sym in macho.symbols:
        print(sym)

Documentation

Contact

  • Mail: contact at lief.re

  • Discord: LIEF

Authors

Romain Thomas @rh0main


LIEF is provided under the Apache 2.0 license

Wheel compatibility matrix

Platform CPython 3.8 CPython 3.9 CPython 3.10 CPython 3.11 CPython 3.12 CPython 3.13 CPython 3.14
macosx_11_0_arm64
macosx_11_0_x86_64
manylinux2014_aarch64
manylinux_2_28_i686
manylinux_2_28_x86_64
musllinux_1_2_aarch64
musllinux_1_2_i686
musllinux_1_2_x86_64
win32
win_amd64
win_arm64

Files in release

lief-0.17.6-cp310-cp310-macosx_11_0_arm64.whl (2.8MiB)
lief-0.17.6-cp310-cp310-macosx_11_0_x86_64.whl (3.0MiB)
lief-0.17.6-cp310-cp310-manylinux2014_aarch64.whl (3.5MiB)
lief-0.17.6-cp310-cp310-manylinux_2_28_i686.whl (3.3MiB)
lief-0.17.6-cp310-cp310-manylinux_2_28_x86_64.whl (3.2MiB)
lief-0.17.6-cp310-cp310-musllinux_1_2_aarch64.whl (3.4MiB)
lief-0.17.6-cp310-cp310-musllinux_1_2_i686.whl (3.7MiB)
lief-0.17.6-cp310-cp310-musllinux_1_2_x86_64.whl (3.5MiB)
lief-0.17.6-cp310-cp310-win32.whl (3.3MiB)
lief-0.17.6-cp310-cp310-win_amd64.whl (3.5MiB)
lief-0.17.6-cp311-cp311-macosx_11_0_arm64.whl (2.9MiB)
lief-0.17.6-cp311-cp311-macosx_11_0_x86_64.whl (3.0MiB)
lief-0.17.6-cp311-cp311-manylinux2014_aarch64.whl (3.5MiB)
lief-0.17.6-cp311-cp311-manylinux_2_28_i686.whl (3.3MiB)
lief-0.17.6-cp311-cp311-manylinux_2_28_x86_64.whl (3.2MiB)
lief-0.17.6-cp311-cp311-musllinux_1_2_aarch64.whl (3.4MiB)
lief-0.17.6-cp311-cp311-musllinux_1_2_i686.whl (3.7MiB)
lief-0.17.6-cp311-cp311-musllinux_1_2_x86_64.whl (3.5MiB)
lief-0.17.6-cp311-cp311-win32.whl (3.3MiB)
lief-0.17.6-cp311-cp311-win_amd64.whl (3.5MiB)
lief-0.17.6-cp311-cp311-win_arm64.whl (3.3MiB)
lief-0.17.6-cp312-cp312-macosx_11_0_arm64.whl (2.9MiB)
lief-0.17.6-cp312-cp312-macosx_11_0_x86_64.whl (3.0MiB)
lief-0.17.6-cp312-cp312-manylinux2014_aarch64.whl (3.5MiB)
lief-0.17.6-cp312-cp312-manylinux_2_28_i686.whl (3.3MiB)
lief-0.17.6-cp312-cp312-manylinux_2_28_x86_64.whl (3.2MiB)
lief-0.17.6-cp312-cp312-musllinux_1_2_aarch64.whl (3.4MiB)
lief-0.17.6-cp312-cp312-musllinux_1_2_i686.whl (3.7MiB)
lief-0.17.6-cp312-cp312-musllinux_1_2_x86_64.whl (3.5MiB)
lief-0.17.6-cp312-cp312-win32.whl (3.3MiB)
lief-0.17.6-cp312-cp312-win_amd64.whl (3.5MiB)
lief-0.17.6-cp312-cp312-win_arm64.whl (3.3MiB)
lief-0.17.6-cp313-cp313-macosx_11_0_arm64.whl (2.9MiB)
lief-0.17.6-cp313-cp313-macosx_11_0_x86_64.whl (3.0MiB)
lief-0.17.6-cp313-cp313-manylinux2014_aarch64.whl (3.5MiB)
lief-0.17.6-cp313-cp313-manylinux_2_28_i686.whl (3.3MiB)
lief-0.17.6-cp313-cp313-manylinux_2_28_x86_64.whl (3.2MiB)
lief-0.17.6-cp313-cp313-musllinux_1_2_aarch64.whl (3.4MiB)
lief-0.17.6-cp313-cp313-musllinux_1_2_i686.whl (3.7MiB)
lief-0.17.6-cp313-cp313-musllinux_1_2_x86_64.whl (3.5MiB)
lief-0.17.6-cp313-cp313-win32.whl (3.3MiB)
lief-0.17.6-cp313-cp313-win_amd64.whl (3.5MiB)
lief-0.17.6-cp313-cp313-win_arm64.whl (3.3MiB)
lief-0.17.6-cp314-cp314-macosx_11_0_arm64.whl (2.9MiB)
lief-0.17.6-cp314-cp314-macosx_11_0_x86_64.whl (3.0MiB)
lief-0.17.6-cp314-cp314-manylinux2014_aarch64.whl (3.5MiB)
lief-0.17.6-cp314-cp314-manylinux_2_28_i686.whl (3.3MiB)
lief-0.17.6-cp314-cp314-manylinux_2_28_x86_64.whl (3.2MiB)
lief-0.17.6-cp314-cp314-musllinux_1_2_aarch64.whl (3.4MiB)
lief-0.17.6-cp314-cp314-musllinux_1_2_i686.whl (3.7MiB)
lief-0.17.6-cp314-cp314-musllinux_1_2_x86_64.whl (3.5MiB)
lief-0.17.6-cp314-cp314-win32.whl (3.3MiB)
lief-0.17.6-cp314-cp314-win_amd64.whl (3.5MiB)
lief-0.17.6-cp314-cp314-win_arm64.whl (3.3MiB)
lief-0.17.6-cp38-cp38-macosx_11_0_arm64.whl (2.8MiB)
lief-0.17.6-cp38-cp38-macosx_11_0_x86_64.whl (3.0MiB)
lief-0.17.6-cp38-cp38-manylinux2014_aarch64.whl (3.5MiB)
lief-0.17.6-cp38-cp38-manylinux_2_28_i686.whl (3.3MiB)
lief-0.17.6-cp38-cp38-manylinux_2_28_x86_64.whl (3.2MiB)
lief-0.17.6-cp38-cp38-musllinux_1_2_aarch64.whl (3.4MiB)
lief-0.17.6-cp38-cp38-musllinux_1_2_i686.whl (3.7MiB)
lief-0.17.6-cp38-cp38-musllinux_1_2_x86_64.whl (3.5MiB)
lief-0.17.6-cp38-cp38-win32.whl (3.3MiB)
lief-0.17.6-cp38-cp38-win_amd64.whl (3.5MiB)
lief-0.17.6-cp39-cp39-macosx_11_0_arm64.whl (2.9MiB)
lief-0.17.6-cp39-cp39-macosx_11_0_x86_64.whl (3.0MiB)
lief-0.17.6-cp39-cp39-manylinux2014_aarch64.whl (3.5MiB)
lief-0.17.6-cp39-cp39-manylinux_2_28_i686.whl (3.3MiB)
lief-0.17.6-cp39-cp39-manylinux_2_28_x86_64.whl (3.2MiB)
lief-0.17.6-cp39-cp39-musllinux_1_2_aarch64.whl (3.4MiB)
lief-0.17.6-cp39-cp39-musllinux_1_2_i686.whl (3.7MiB)
lief-0.17.6-cp39-cp39-musllinux_1_2_x86_64.whl (3.5MiB)
lief-0.17.6-cp39-cp39-win32.whl (3.3MiB)
lief-0.17.6-cp39-cp39-win_amd64.whl (3.5MiB)
lief-0.17.6.tar.gz (7.0KiB)
No dependencies