A summary of data about the Ruby ecosystem.

https://github.com/ffi/ffi-compiler


https://github.com/ffi/ffi-compiler

Keywords from Contributors

ruby-gem

Last synced: about 21 hours ago
JSON representation

Repository metadata

README.md

ffi-compiler is a ruby library for automating compilation of native libraries for use with ffi

To use, define your own ruby->native API using ffi, implement it in C, then use ffi-compiler to compile it.

Example

Directory layout
lib
  |- example
      |- example.rb
      
ext
  |- example.c
  |- Rakefile
  
example.gemspec
lib/example/example.rb
require 'ffi'
require 'ffi-compiler/loader'

module Example
  extend FFI::Library
  ffi_lib FFI::Compiler::Loader.find('example')
  
  # example function which takes no parameters and returns long
  attach_function :example, [], :long
end
ext/example.c
long
example(void)
{
    return 0xdeadbeef;
}
ext/Rakefile
require 'ffi-compiler/compile_task'

FFI::Compiler::CompileTask.new('example') do |c|
  c.have_header?('stdio.h', '/usr/local/include')
  c.have_func?('puts')
  c.have_library?('z')
end
example.gemspec
Gem::Specification.new do |s|
  s.extensions << 'ext/Rakefile'
  s.name = 'example'
  s.version = '0.0.1'
  s.email = 'ffi-example'
  s.files = %w(example.gemspec) + Dir.glob("{lib,spec,ext}/**/*")
  s.add_dependency 'rake'
  s.add_dependency 'ffi-compiler'
end
Build gem and install it
gem build example.gemspec && gem install example-0.0.1.gem
Successfully built RubyGem
  Name: example
  Version: 0.0.1
  File: example-0.0.1.gem
Building native extensions.  This could take a while...
Successfully installed example-0.0.1
Test it
$ irb
2.0.0dev :001 > require 'example/example'
 => true 
2.0.0dev :002 > puts "Example.example=#{Example.example.to_s(16)}"
Example.example=deadbeef
 => nil 

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: about 23 hours ago

Total Commits: 72
Total Committers: 10
Avg Commits per committer: 7.2
Development Distribution Score (DDS): 0.514

Commits in past year: 4
Committers in past year: 2
Avg Commits per committer in past year: 2.0
Development Distribution Score (DDS) in past year: 0.25

Name Email Commits
Wayne Meissner w****r@g****m 35
Dāvis Mosāns d****h@g****m 27
Alexey Vasiliev l****a@g****m 2
Stephen von Takach s****e@c****e 2
matoro m****o 1
Nick Vladimiroff n****f@g****m 1
Luis Lavena l****a@g****m 1
Levente Polyak l****e@l****t 1
Hugo Frappier h****o@c****m 1
Alexey Morozov a****s@g****m 1

Committer domains:


Issue and Pull Request metadata

Last synced: 18 days ago

Total issues: 13
Total pull requests: 18
Average time to close issues: 10 months
Average time to close pull requests: 4 months
Total issue authors: 12
Total pull request authors: 11
Average comments per issue: 2.69
Average comments per pull request: 2.94
Merged pull request: 12
Bot issues: 0
Bot pull requests: 0

Past year issues: 1
Past year pull requests: 3
Past year average time to close issues: N/A
Past year average time to close pull requests: 5 months
Past year issue authors: 1
Past year pull request authors: 2
Past year average comments per issue: 1.0
Past year average comments per pull request: 2.67
Past year merged pull request: 1
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/ffi/ffi-compiler

Top Issue Authors

  • frahugo (2)
  • spacewander (1)
  • uvlad7 (1)
  • utkarsh2102 (1)
  • acaloiaro (1)
  • jirutka (1)
  • Envek (1)
  • ololobus (1)
  • azimux (1)
  • SergeyKanzhelev (1)
  • le0pard (1)
  • ntkme (1)

Top Pull Request Authors

  • davispuh (6)
  • jonbarlo (2)
  • ntkme (2)
  • anthraxx (1)
  • alexeymorozov (1)
  • matoro (1)
  • le0pard (1)
  • acaloiaro (1)
  • luislavena (1)
  • nvladimiroff (1)
  • frahugo (1)

Top Issue Labels

Top Pull Request Labels


Package metadata

gem.coop: ffi-compiler

Ruby FFI library

  • Homepage: https://github.com/ffi/ffi-compiler
  • Documentation: http://www.rubydoc.info/gems/ffi-compiler/
  • Licenses: Apache-2.0
  • Latest release: 1.4.2 (published 21 days ago)
  • Last Synced: 2026-05-23T03:30:49.117Z (about 21 hours ago)
  • Versions: 14
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 168,989,002 Total
  • Docker Downloads: 1,567,265,720
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 0.056%
    • Docker downloads count: 0.063%
    • Downloads: 0.159%
  • Maintainers (4)
rubygems.org: ffi-compiler

Ruby FFI library

  • Homepage: https://github.com/ffi/ffi-compiler
  • Documentation: http://www.rubydoc.info/gems/ffi-compiler/
  • Licenses: Apache-2.0
  • Latest release: 1.4.2 (published 21 days ago)
  • Last Synced: 2026-05-22T04:01:10.635Z (2 days ago)
  • Versions: 14
  • Dependent Packages: 28
  • Dependent Repositories: 7,509
  • Downloads: 168,887,075 Total
  • Docker Downloads: 1,567,265,720
  • Rankings:
    • Docker downloads count: 0.084%
    • Downloads: 0.196%
    • Dependent repos count: 0.372%
    • Average: 0.376%
    • Dependent packages count: 0.851%
  • Maintainers (4)
ubuntu-24.04: ruby-ffi-compiler

  • Homepage: https://github.com/ffi/ffi-compiler
  • Licenses:
  • Latest release: 1.0.1-4 (published 4 months ago)
  • Last Synced: 2026-03-06T15:59:07.670Z (3 months ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
ubuntu-20.04: ruby-ffi-compiler

  • Homepage: https://github.com/ffi/ffi-compiler
  • Licenses:
  • Latest release: 1.0.1-3 (published 3 months ago)
  • Last Synced: 2026-03-13T20:21:57.306Z (2 months ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
debian-12: ruby-ffi-compiler

  • Homepage: https://github.com/ffi/ffi-compiler
  • Documentation: https://packages.debian.org/bookworm/ruby-ffi-compiler
  • Licenses:
  • Latest release: 1.0.1-4 (published 3 months ago)
  • Last Synced: 2026-03-13T23:43:16.334Z (2 months ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
ubuntu-23.10: ruby-ffi-compiler

  • Homepage: https://github.com/ffi/ffi-compiler
  • Licenses:
  • Latest release: 1.0.1-4 (published 3 months ago)
  • Last Synced: 2026-03-14T03:13:35.973Z (2 months ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
debian-11: ruby-ffi-compiler

  • Homepage: https://github.com/ffi/ffi-compiler
  • Documentation: https://packages.debian.org/bullseye/ruby-ffi-compiler
  • Licenses:
  • Latest release: 1.0.1-4 (published 3 months ago)
  • Last Synced: 2026-03-14T06:22:44.480Z (2 months ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
ubuntu-23.04: ruby-ffi-compiler

  • Homepage: https://github.com/ffi/ffi-compiler
  • Licenses:
  • Latest release: 1.0.1-4 (published 3 months ago)
  • Last Synced: 2026-03-11T14:11:59.143Z (2 months ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
ubuntu-24.10: ruby-ffi-compiler

  • Homepage: https://github.com/ffi/ffi-compiler
  • Licenses:
  • Latest release: 1.0.1-4 (published 3 months ago)
  • Last Synced: 2026-03-09T17:05:17.571Z (3 months ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
ubuntu-22.04: ruby-ffi-compiler

  • Homepage: https://github.com/ffi/ffi-compiler
  • Licenses:
  • Latest release: 1.0.1-4 (published 3 months ago)
  • Last Synced: 2026-03-13T22:42:03.733Z (2 months ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
debian-13: ruby-ffi-compiler

  • Homepage: https://github.com/ffi/ffi-compiler
  • Documentation: https://packages.debian.org/trixie/ruby-ffi-compiler
  • Licenses:
  • Latest release: 1.0.1-4 (published 3 months ago)
  • Last Synced: 2026-03-14T18:09:09.019Z (2 months ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%

Dependencies

example/example.gemspec rubygems
  • rspec >= 0 development
  • ffi-compiler >= 0.0.2
  • rake >= 0
ffi-compiler.gemspec rubygems
  • rspec >= 0 development
  • rubygems-tasks >= 0 development
  • ffi >= 1.0.0
  • rake >= 0
Gemfile rubygems
Gemfile.lock rubygems
  • bundler 2.4.12
  • diff-lcs 1.5.0
  • ffi 1.15.5
  • ffi-compiler 1.2.0
  • io-console 0.6.0
  • irb 1.6.4
  • rake 13.0.6
  • reline 0.3.3
  • rspec 3.12.0
  • rspec-core 3.12.2
  • rspec-expectations 3.12.3
  • rspec-mocks 3.12.5
  • rspec-support 3.12.0
  • rubygems-tasks 0.2.5

Score: 27.934263174447473