私は Ruby C 拡張機能の書き方を学んでいますが、最も単純な例を過ぎています。私はソケットで何かを達成しようとしていたので、 の下にクラスを定義する拡張機能を作成しようとしましたrb_cIPSocket
。
私のCファイルの上部には、次のものがあります。
#include "rubysocket.h"
そして、私は受け取っています:
...s.c:3:31: error: rubysocket.h: No such file or directory
これはおそらくそうです。ただし、可能なすべてのパスを試しました。
#include "rubysocket.h"
#include "socket/rubysocket.h"
#include "ext/socket/rubysocket.h"
#include <rubysocket.h>
#include <socket/rubysocket.h>
#include <ext/socket/rubysocket.h>
そして、これは私のものextconf.rb
です:
require 'mkmf'
dir_config("my_ext")
have_library("c", "main")
create_makefile("my_ext")
等々。ここで実際に何が欠けていますか?そのヘッダー ファイルをインクルードできないのはなぜですか? RVM と Ruby 1.9.3-p448 で OSX を使用しています。ありがとうございました。