我想编译rfuzz的c扩展名。我得到的错误是红宝石rfuzz编译错误1.9.2
make gcc -I. -I/usr/local/include/ruby-1.9.1/i686-linux -I/usr/local/include/ruby-1.9.1/ruby/backward -I/usr/local/include/ruby-1.9.1 -I. -D_FILE_OFFSET_BITS=64 -fPIC -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-long-long -o http11_client.o -c http11_client.c
http11_client.c: In function ‘client_http_field’:
http11_client.c:36:22: error: ‘struct RString’ has no member named ‘ptr’
http11_client.c:36:50: error: ‘struct RString’ has no member named ‘len’
http11_client.c: In function ‘HttpClientParser_execute’:
http11_client.c:218:23: error: ‘struct RString’ has no member named ‘ptr’
http11_client.c:219:23: error: ‘struct RString’ has no member named ‘len’
make: *** [http11_client.o] Error 1
RSTRING是Ruby.h. ruby.h中的结构确实有这些成员。
struct RString {
struct RBasic basic;
union {
struct {
long len;
char *ptr;
union {
long capa;
VALUE shared;
} aux;
} heap;
char ary[RSTRING_EMBED_LEN_MAX + 1];
} as;
};
我错过了什么?
+1提一个有趣的宝石。 – 2011-03-08 23:04:11