Project

ruby-llvm

0.11
A long-lived project that still receives updates
Ruby-LLVM is a Ruby language binding to the LLVM compiler infrastructure library.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

~> 1.13
>= 12, < 14
 Project Readme

Known Vulnerabilities Code Climate Maintainability Code Climate Issue Count

Ruby-LLVM

Ruby-LLVM is a Ruby language binding to the LLVM compiler infrastructure library. LLVM allows users to create just-in-time (JIT) compilers, ahead-of-time (AOT) compilers for multiple architectures, code analyzers and more. LLVM bindings can also be used to speed up Ruby code by compiling and loading computationally intensive algorithms on the fly.

Current version

This library currently binds to LLVM-18 (specifically llvm-c 18.

About version numbers

The first two digits of ruby-llvm's version number refer to the required major and minor version of LLVM. The third digit refers to the ruby-llvm release itself. Because LLVM's api changes often, this coupling between LLVM and ruby-llvm versions is useful.

Debian/Ubuntu

LLVM Debian/Ubuntu Packages

Homebrew

LLVM can be installed with Homebrew by executing brew install llvm --shared

Source and other binaries

  • LLVM Download Page
  • If compiling from source the --enable-shared and --enable-jit flags may be needed.

See Also

License

Ruby-LLVM is available under the BSD 3-clause (see LICENSE), Copyright (c) 2010-2013 Jeremy Voorhis

Ruby-LLVM is possible because of its contributors:

  • Evan Phoenix
  • David Holroyd
  • Takanori Ishikawa
  • Ronaldo M. Ferraz
  • Mac Malone
  • Chris Wailes
  • Ary Borenszweig
  • Richard Musiol
  • Juan Wajnerman
  • Steven Farlie
  • Peter Zotov
  • Austin Seipp
  • Torsten Rüger
  • Nathaniel Barnes