# Loads mkmf which is used to make makefiles for Ruby extensions require 'mkmf' # Give it a name extension_name = 'cext' dirs = ["/usr/local/lib"] $libs += "-levent " $libs += "-levent_extra " $libs += "-levent_pthreads " $libs += "-ljemalloc " $CFLAGS += " -I/usr/include" $CFLAGS += " -I/usr/local/include" $CFLAGS += " -I/usr/local/include/jemalloc" $LDFLAGS += " -L/usr/lib" $LDFLAGS += " -L/usr/local/lib" # The destination dir_config(extension_name) # Do the work create_makefile(extension_name)
先建立一个这样的文件. 其实比较简单易懂.
无非就是标记好要连接的连接库
然后标记好头文件和库文件的路径
然后create_makefile就好了.
然后
ruby extconf.rb
如果没出错.
就会自动生成Makefile文件在当前路径. 然后make
ruby的C库就生成了.
如果想要全局使用 make install 就好了.
相关推荐
2. **include**:这个目录包含Ruby的头文件,主要用于C语言扩展Ruby库时的编译。如果你需要编写C语言的Ruby扩展模块,你需要引用这些头文件。 3. **share**:这个目录通常包含共享资源,如locale数据、gems的元数据...
Ruby是解释型而非编译型语言,由Matz(Yukihiro Matsumoto)于1994年创建,用C语言编写,可以在任何拥有C编译器的平台上运行,包括Windows和Linux。 Watir的工作原理是利用Internet Explorer(IE)的COM接口,即...
Ruby的C扩展库允许开发者使用C语言编写高性能的代码,并与Ruby代码无缝集成。DevKit提供了一套工具,如mingw-w64,使得在Windows环境下编译这些C扩展成为可能。 总的来说,"rubyinstaller-devkit-3.0.2-1-x64.zip...
RubyInstaller还支持DevKit,这是一个用于编译和构建C语言扩展的工具包,对于那些需要使用C扩展的Ruby库来说尤其重要。 DevKit是一个小型的开发工具集,它包含了一系列用于在Windows上编译原生Ruby扩展所需的工具,...
为了更好地编写Ruby代码,推荐使用以下编辑器: - **Visual Studio Code**:通过安装Ruby插件来支持Ruby开发。 - **Sublime Text**:同样可以通过插件支持Ruby开发。 - **Atom**:社区活跃,插件丰富。 - **RubyMine...
4. `ext/`: 扩展模块目录,用于存放C语言编写的Ruby扩展。 5. `lib/`: 标准库目录,包含预装的Ruby库。 6. `test/`: 测试套件,用于验证代码的正确性。 7. `doc/`: 文档目录,包括API参考和用户指南。 要安装和使用...
1. **高效性**:mysql2库使用C语言编写,直接与MySQL C API对接,减少了中间的解释成本,提高了数据读取和写入的速度。 2. **简单易用的API**:它提供了一个简洁的Ruby接口,使得执行SQL查询、处理结果集以及管理...
5. include:这个目录包含了Ruby的头文件,它们是C语言编写扩展模块时所需的,允许开发者用C语言直接与Ruby API交互。 6. doc:文档目录,可能包含Ruby 1.9.1的官方文档、API参考或者其他帮助文件,对于学习和开发...
- **include**: 这个目录包含头文件,供C/C++扩展或与其他C语言库交互时使用。这些头文件定义了Ruby的API,开发者可以使用它们来创建自定义的Ruby扩展模块。 - **lib**: 库文件夹包含了Ruby运行时所需的动态链接库...
- **可扩展性**:Ruby可以通过扩展库来增强其功能,这些库通常以C语言编写,以提高性能。 #### 三、Ruby的安装与使用 - **下载与安装**:Ruby的安装可以通过官方渠道获取最新版本,例如Ruby 1.8.5版本。对于...
这个压缩包中的`rubyinstaller-devkit-3.0.0-1-x64.exe`文件是DevKit的集成,意味着在安装Ruby的同时,也会安装这个开发工具包,以便开发者可以利用C语言编写Ruby的扩展模块。 Ruby语言本身是一种面向对象、动态...
5. 安装DevKit:RubyInstaller不包含用于编译C扩展的工具,需要额外安装DevKit,这提供了GCC等工具,使得你可以使用C语言编写的Ruby库。 6. 验证安装:安装完成后,打开命令行,输入`ruby -v`,如果正确安装,会显示...
7. **C扩展**:Ruby允许通过C语言编写高性能的扩展模块。这可能是为了加速算法执行,因为C语言比Ruby更接近底层硬件,运行速度更快。开发者可能使用C来实现内存管理效率更高或者计算密集型的部分。 8. **实践应用**...
6. **Ruby C API**:对于想要深入到Ruby底层的开发者,书中有章节介绍如何使用Ruby的C API来扩展Ruby,创建C语言编写的Gem,这包括了如何创建Ruby对象、调用Ruby方法和处理Ruby数据类型等。 7. **调试与性能优化**...
- **第17章:Extending Ruby**:讲解如何使用C语言扩展Ruby的功能。 - **第18章至第23章**:这些章节涵盖了Ruby语言的核心特性,包括类和对象的高级主题、锁(lock)机制、反射(reflection)、分布式Ruby等。 #### 六...
5. 可扩展性:可以使用C语言编写扩展,提高性能或添加新的功能。 Ruby与Python相比,两者都注重代码的可读性和简洁性,但Ruby更倾向于面向对象,而Python则在面向过程和面向对象之间保持平衡。Ruby的语法通常更加...
Ruby不仅可以通过内置功能满足大部分需求,还可以通过C语言扩展其功能。本章介绍了如何使用C语言编写扩展模块,并将其集成到Ruby环境中。 ##### 第18章至第27章及附录 剩余章节涵盖了Ruby语言的各个方面,从语言...
- 可扩展性:可以轻松地通过C语言扩展Ruby的功能。 - 简洁易读:语法简洁明了,易于阅读和编写代码。 - **跨平台性**:支持多种操作系统,包括Windows、Mac OS、Linux等UNIX的各种版本。 #### 二、Ruby语言适用...
这个安装程序还可能包含了DevKit,这是一个配套的工具集,用于帮助开发者在Windows上编译和管理C语言扩展的Ruby gem(Ruby的库或模块)。 Ruby 2.6.1引入了多个新特性,比如改进的性能、新的语法糖、更好的错误报告...