Skip to main content

Unofficial self contained distribution of the LLDB Python Bindings

Project description

lldb-python

build and publish

An unofficial self contained distribution of the LLDB Python Bindings to ease integration of the LLDB debugger into external Python projects.

The Python API is normally distributed as part of the main LLDB package, but this typically uses the System Python which can make it difficult to integrate into standalone Python projects that typically will use a virtual environment

A small patch is made to the LLDB build to disable linking to the Python library, and to enable linking to static libraries provided by conan.

This makes it easier to distribute the LLDB Python bindings as a relocatable binary distribution.

Installation

Download the appropriate wheel file for your platform and architecture and install using PIP.

Example Usage

There are extensive examples in the LLDB Documentation and the LLVM Repository

There is also a basic test suite in the test folder of this repository

Build

Wheels are built using scikit-build-core and cibuildwheel. Some post-build customization of the built wheel is done that could not be accomplished using these tools alone.

./download-llvm.sh
pipx run build -v --wheel
./python edit-wheel.py preprocess dist/<wheel_file>

Then to test the wheel

pip install -r requirements.txt
python -m venv .venv
source .venv/bin/activate
pip install dist/<wheel_file>
pytest -v test

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

lldb_python-19.0.0.dev1-cp312-cp312-manylinux_2_28_x86_64.whl (52.2 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.28+ x86-64

lldb_python-19.0.0.dev1-cp312-cp312-macosx_11_0_arm64.whl (38.5 MB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

lldb_python-19.0.0.dev1-cp311-cp311-manylinux_2_28_x86_64.whl (52.2 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

lldb_python-19.0.0.dev1-cp311-cp311-macosx_11_0_arm64.whl (38.5 MB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

lldb_python-19.0.0.dev1-cp310-cp310-manylinux_2_28_x86_64.whl (52.2 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

lldb_python-19.0.0.dev1-cp310-cp310-macosx_11_0_arm64.whl (38.5 MB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

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