How To Install python3-llvmlite on Fedora 36

In this tutorial we learn how to install python3-llvmlite in Fedora 36. python3-llvmlite is Lightweight LLVM Python binding for writing JIT compilers

Introduction

In this tutorial we learn how to install python3-llvmlite on Fedora 36.

What is python3-llvmlite

llvmlite provides a Python binding to LLVM for use in Numba. Numba previously relied on llvmpy. While llvmpy exposed large parts of the LLVM C++ API for direct calls into the LLVM library, llvmlite takes an entirely different approach. Llvmlite starts from the needs of a JIT compiler and splits them into two decoupled tasks - Construction of a Module, function by function, Instruction by instruction. - Compilation and optimization of the module into machine code. The construction of an LLVM module does not call the LLVM C++ API. Rather, it constructs the LLVM intermediate representation (IR) in pure Python. This is the role of the IR layer. The compilation of an LLVM module takes the IR in textual form and feeds it into LLVM’s parsing API. It then returns a thin wrapper around LLVM’s C++ module object. This is the role of the binding layer. Once parsed, the module’s source code cannot be modified, which loses the flexibility of the direct mapping of C++ APIs into Python that was provided by llvmpy but saves a great deal of maintenance.

We can use yum or dnf to install python3-llvmlite on Fedora 36. In this tutorial we discuss both methods but you only need to choose one of method to install python3-llvmlite.

Install python3-llvmlite on Fedora 36 Using dnf

Update yum database with dnf using the following command.

sudo dnf makecache --refresh

After updating yum database, We can install python3-llvmlite using dnf by running the following command:

sudo dnf -y install python3-llvmlite

Install python3-llvmlite on Fedora 36 Using yum

Update yum database with yum using the following command.

sudo yum makecache --refresh

After updating yum database, We can install python3-llvmlite using yum by running the following command:

sudo yum -y install python3-llvmlite

How To Uninstall python3-llvmlite on Fedora 36

To uninstall only the python3-llvmlite package we can use the following command:

sudo dnf remove python3-llvmlite

python3-llvmlite Package Contents on Fedora 36

/usr/lib/.build-id
/usr/lib/.build-id/40
/usr/lib/.build-id/40/97d075a207141874a835e624ecef24c2661ae5
/usr/lib64/python3.10/site-packages/llvmlite
/usr/lib64/python3.10/site-packages/llvmlite-0.37.0.dist-info
/usr/lib64/python3.10/site-packages/llvmlite-0.37.0.dist-info/INSTALLER
/usr/lib64/python3.10/site-packages/llvmlite-0.37.0.dist-info/LICENSE
/usr/lib64/python3.10/site-packages/llvmlite-0.37.0.dist-info/METADATA
/usr/lib64/python3.10/site-packages/llvmlite-0.37.0.dist-info/WHEEL
/usr/lib64/python3.10/site-packages/llvmlite-0.37.0.dist-info/top_level.txt
/usr/lib64/python3.10/site-packages/llvmlite/__init__.py
/usr/lib64/python3.10/site-packages/llvmlite/__pycache__
/usr/lib64/python3.10/site-packages/llvmlite/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/__pycache__/__init__.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/__pycache__/_version.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/__pycache__/_version.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/__pycache__/utils.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/__pycache__/utils.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/_version.py
/usr/lib64/python3.10/site-packages/llvmlite/binding
/usr/lib64/python3.10/site-packages/llvmlite/binding/__init__.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/__init__.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/analysis.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/analysis.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/common.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/common.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/context.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/context.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/dylib.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/dylib.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/executionengine.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/executionengine.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/ffi.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/ffi.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/initfini.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/initfini.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/linker.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/linker.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/module.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/module.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/object_file.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/object_file.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/options.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/options.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/passmanagers.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/passmanagers.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/targets.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/targets.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/transforms.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/transforms.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/value.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/__pycache__/value.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/binding/analysis.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/common.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/context.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/dylib.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/executionengine.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/ffi.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/initfini.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/libllvmlite.so
/usr/lib64/python3.10/site-packages/llvmlite/binding/linker.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/module.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/object_file.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/options.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/passmanagers.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/targets.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/transforms.py
/usr/lib64/python3.10/site-packages/llvmlite/binding/value.py
/usr/lib64/python3.10/site-packages/llvmlite/ir
/usr/lib64/python3.10/site-packages/llvmlite/ir/__init__.py
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/__init__.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/_utils.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/_utils.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/builder.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/builder.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/context.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/context.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/instructions.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/instructions.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/module.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/module.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/transforms.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/transforms.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/types.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/types.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/values.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/__pycache__/values.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/ir/_utils.py
/usr/lib64/python3.10/site-packages/llvmlite/ir/builder.py
/usr/lib64/python3.10/site-packages/llvmlite/ir/context.py
/usr/lib64/python3.10/site-packages/llvmlite/ir/instructions.py
/usr/lib64/python3.10/site-packages/llvmlite/ir/module.py
/usr/lib64/python3.10/site-packages/llvmlite/ir/transforms.py
/usr/lib64/python3.10/site-packages/llvmlite/ir/types.py
/usr/lib64/python3.10/site-packages/llvmlite/ir/values.py
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy/__init__.py
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy/__pycache__
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy/__pycache__/__init__.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy/__pycache__/core.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy/__pycache__/core.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy/__pycache__/passes.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy/__pycache__/passes.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy/core.py
/usr/lib64/python3.10/site-packages/llvmlite/llvmpy/passes.py
/usr/lib64/python3.10/site-packages/llvmlite/tests
/usr/lib64/python3.10/site-packages/llvmlite/tests/__init__.py
/usr/lib64/python3.10/site-packages/llvmlite/tests/__main__.py
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/__init__.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/__init__.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/__main__.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/__main__.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/customize.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/customize.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/refprune_proto.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/refprune_proto.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/test_binding.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/test_binding.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/test_ir.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/test_ir.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/test_llvmpy.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/test_llvmpy.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/test_refprune.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/test_refprune.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/test_valuerepr.cpython-310.opt-1.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/__pycache__/test_valuerepr.cpython-310.pyc
/usr/lib64/python3.10/site-packages/llvmlite/tests/customize.py
/usr/lib64/python3.10/site-packages/llvmlite/tests/refprune_proto.py
/usr/lib64/python3.10/site-packages/llvmlite/tests/test_binding.py
/usr/lib64/python3.10/site-packages/llvmlite/tests/test_ir.py
/usr/lib64/python3.10/site-packages/llvmlite/tests/test_llvmpy.py
/usr/lib64/python3.10/site-packages/llvmlite/tests/test_refprune.py
/usr/lib64/python3.10/site-packages/llvmlite/tests/test_valuerepr.py
/usr/lib64/python3.10/site-packages/llvmlite/utils.py
/usr/share/doc/python3-llvmlite
/usr/share/doc/python3-llvmlite/CHANGE_LOG
/usr/share/doc/python3-llvmlite/README.rst

References

Summary

In this tutorial we learn how to install python3-llvmlite on Fedora 36 using yum and [dnf]((/fedora/36/dnf/).