百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
F

ffi

> 编程语言
开源

Ruby FFI

2.1K stars0 点赞3 次浏览
访问官网GitHub

工具介绍

Ruby FFI

Ruby-FFI https://github.com/ffi/ffi/wiki

说明

Ruby-FFI 是一个用于通过程序化方式加载动态链接的本机库的 gem。 库、它们中的绑定函数以及调用这些函数 来自 Ruby 代码。此外, Ruby-FFI 扩展可以在不做任何更改的情况下运行。 关于 CRuby (MRI)、JRuby、Rubinius 和 TruffleRuby。了解为什么你应该编写下一个扩展 使用 Ruby-FFI。

特性

  • 直观的 DSL
  • 支持所有 C 原生类型
  • C 结构 (也可嵌套)、枚举和全局变量
  • C 到 Ruby 的回调
  • 自动回收本机内存
  • 在 Ractor 中可用: 如何在 Ruby Ractors 中使用 FFI

概述

ruby
require 'ffi'

module MyLib
  extend FFI::Library
  ffi_lib 'c'
  attach_function :puts, [ :string ], :int
end

MyLib.puts 'Hello, World using libc!'

如果需要更多的示例,可以查看以下内容: * 文档 * samples/ 文件夹 * wiki 中的示例 * wiki 上列出的使用 FFI 的项目:https://github.com/ffi/ffi/wiki/projects-using-ffi

或者由 --disable-system-libffi 禁用。在运行 PaX (Gentoo、Alpine 等) 的 Linux 系统上,FFI 可能会触发 mprotect 错误。您可能需要暂时禁用 ruby 的 mprotect(paxctl -m [/path/to/ruby])。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Ruby

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言