【问题标题】:Creating a C extension in Ruby在 Ruby 中创建 C 扩展
【发布时间】:2012-08-13 20:11:05
【问题描述】:

我正在尝试为 ruby​​ 创建一个 C 扩展。我对开发非常陌生,刚刚熟悉 Ruby,所以我真的迷路了。

我看过“如何在五分钟内用 Ruby 创建 C 扩展”,这很有意义。问题是我不知道使用什么程序来编译 C 代码和 Ruby 代码。我一直在为我的 Ruby 编程使用文本文档,所以我从来不需要编译它们。

如果我想制作一个 C 扩展(按照前面提到的模型)我应该使用什么 IDE,我应该编译成什么文件格式?另外,我在哪里放置 Ruby 文件和 C 编译文件?最后,一个简单的记事本编辑器能用于这个 Ruby 开发吗?请记住,我一般是编程新手,所以这些问题可能显得幼稚。

【问题讨论】:

  • 你现在用 Ruby 做什么?
  • 这里有很多松散相关的问题。在开始使用 Ruby C API 之前,您绝对应该正确地学习 C。完成后,Ruby C API SO wiki page 就很有用了。

标签: c ruby ruby-c-extension


【解决方案1】:

在为 Ruby 创建 C 扩展之前,您确实应该熟悉 C 编程。一旦您学习了 C 的基础知识,您应该能够轻松地学习 Ruby 扩展教程。

至于如何学习C,这取决于你的平台和你有什么资源。

要回答您的具体问题,您可以使用任何 C 编译器,并且通常将源代码编译为 .so 文件,Ruby 可以直接 require(因此文件的位置并不重要)。

【讨论】:

    【解决方案2】:

    对我来说,第一步是为我的特定平台建立一个构建环境,那就是适用于 Windows 的 DevKit。现在这取决于您的操作系统是什么。 只要您了解一些 Ruby,那么我建议您学习如何使用 Rake。您可以从 Rakefile 运行一些任务来编译您的 C 扩展。 您应该熟悉设置目录结构。我认为我有很多关于我维护的 github 存储库的信息以供参考。

    Ruby_C_extensions

    stree 文件夹下对您的帮助最大。自述文件有教程的链接。

    享受吧!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-17
      • 1970-01-01
      • 1970-01-01
      • 2020-12-24
      • 1970-01-01
      • 2014-12-13
      相关资源
      最近更新 更多