Project: libclang

Clang Python Bindings, mirrored from the official LLVM repo: https://github.com/llvm/llvm-project/tree/main/clang/bindings/python, to make the installation process easier.

Project Details

Latest version
16.0.6
Home Page
https://github.com/sighingnow/libclang
PyPI Page
https://pypi.org/project/libclang/

Project Popularity

PageRank
0.0043000224920296815
Number of downloads
8003428

libclang-for-pip

PyPI Python Downloads License

Arch: x8664 Arch: aarch64 Arch: arm

Linux Linux Arm Linux AArch64 Linux Alpine

MacOS Intel MacOS M1

Windows Windows AArch64

The repository contains code taken from the LLVM project, to make it easier to install clang's python bindings.

The repository copies necessary Python binding files from LLVM repo, adds packaging scripts to make it a valid Python package and finally uploads the package to pypi. To make the libclang available without installing the LLVM toolkits, this package provides bundled static-linked libclang shared library for different platforms, which, should work well on OSX, Windows, as well as usual Linux distributions.

The aim of this project is to make the clang.cindex (aka., Clang Python Bindings) available for more Python users, without setting up the LLVM environment. To install the package, you just need to run

pip install libclang

Note that the library is named libclang, the package clang on PyPi is another package and doesn't bundle the prebuilt shared library.

Internals

Update class variable library_path of Config in cindex.py as:

    library_path = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'native')

License

This repository follows the license agreement of the LLVM project, see Apache-2.0 WITH LLVM-exception.