Mmap installation failure

Hi, all~

I am struggling to mmap a file using ruby. But some errors occurred
while installing the knu-ruby-mmap and I don’t know what’s going on.
The error information are as follows:

compiling mmap.c
In file included from mmap.c:15:
/home/dx/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/ruby/backward/rubyio.h:2
:2: warning: #warning use “ruby/io.h” instead of “rubyio.h”
mmap.c:16:20: error: intern.h: No such file or directory
mmap.c:17:16: error: re.h: No such file or directory
mmap.c: In function ‘mm_str’:
mmap.c:324: error: ‘struct RString’ has no member named ‘ptr’
mmap.c:325: error: ‘struct RString’ has no member named ‘len’
mmap.c:327: error: ‘struct RString’ has no member named ‘aux’
mmap.c: In function ‘mm_init’:
mmap.c:675: warning: assignment discards qualifiers from pointer target
type
mmap.c:681: error: ‘struct RArray’ has no member named ‘len’
mmap.c:683: error: ‘struct RArray’ has no member named ‘len’
mmap.c:685: error: ‘struct RArray’ has no member named ‘ptr’
mmap.c:687: error: ‘struct RArray’ has no member named ‘ptr’
mmap.c:736: warning: comparison between signed and unsigned integer
expressions
mmap.c: In function ‘mm_update’:
mmap.c:1038: error: ‘struct RString’ has no member named ‘len’
mmap.c:1055: warning: pointer of type ‘void *’ used in arithmetic
mmap.c: In function ‘mm_match’:
mmap.c:1085: warning: implicit declaration of function ‘rb_reg_regcomp’
mmap.c:1086: warning: implicit declaration of function ‘rb_reg_search’
mmap.c: In function ‘mm_correct_backref’:
mmap.c:1124: warning: implicit declaration of function ‘RMATCH’
mmap.c:1124: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1125: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1126: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1126: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1127: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1128: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1128: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1128: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1128: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1129: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1129: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1130: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1131: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c: In function ‘mm_sub_bang_int’:
mmap.c:1169: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1176: error: ‘struct RString’ has no member named ‘ptr’
mmap.c:1177: warning: implicit declaration of function ‘rb_reg_regsub’
mmap.c:1178: error: ‘struct RString’ has no member named ‘ptr’
mmap.c:1182: error: ‘struct RString’ has no member named ‘len’
mmap.c:1183: error: ‘struct RString’ has no member named ‘len’
mmap.c:1183: error: ‘struct RString’ has no member named ‘len’
mmap.c:1184: error: ‘struct RString’ has no member named ‘ptr’
mmap.c:1186: error: ‘struct RString’ has no member named ‘ptr’
mmap.c:1187: error: ‘struct RString’ has no member named ‘len’
mmap.c:1191: error: ‘struct RString’ has no member named ‘len’
mmap.c:1193: error: ‘struct RString’ has no member named ‘len’
mmap.c:1195: error: ‘struct RString’ has no member named ‘ptr’
mmap.c:1195: error: ‘struct RString’ has no member named ‘len’
mmap.c:1196: error: ‘struct RString’ has no member named ‘len’
mmap.c: In function ‘mm_gsub_bang_int’:
mmap.c:1271: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1278: error: ‘struct RString’ has no member named ‘ptr’
mmap.c:1280: error: ‘struct RString’ has no member named ‘ptr’
mmap.c:1284: error: ‘struct RString’ has no member named ‘len’
mmap.c:1285: error: ‘struct RString’ has no member named ‘len’
mmap.c:1285: error: ‘struct RString’ has no member named ‘len’
mmap.c:1288: error: ‘struct RString’ has no member named ‘len’
mmap.c:1292: error: ‘struct RString’ has no member named ‘len’
mmap.c:1294: error: ‘struct RString’ has no member named ‘len’
mmap.c:1296: error: ‘struct RString’ has no member named ‘ptr’
mmap.c:1296: error: ‘struct RString’ has no member named ‘len’
mmap.c:1297: error: ‘struct RString’ has no member named ‘len’
mmap.c:1297: error: ‘struct RString’ has no member named ‘len’
mmap.c:1298: error: ‘struct RString’ has no member named ‘len’
mmap.c:1300: warning: implicit declaration of function ‘mbclen2’
mmap.c:1300: error: ‘struct RString’ has no member named ‘ptr’
mmap.c:1301: error: ‘struct RString’ has no member named ‘len’
mmap.c:1304: error: ‘struct RString’ has no member named ‘len’
mmap.c:1306: error: ‘struct RString’ has no member named ‘len’
mmap.c: In function ‘mm_subpat_set’:
mmap.c:1357: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1361: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c:1365: error: invalid type argument of ‘->’ (have ‘int’)
mmap.c: In function ‘mm_aset’:
mmap.c:1410: error: ‘struct RString’ has no member named ‘len’
mmap.c: In function ‘mm_insert’:
mmap.c:1485: error: ‘struct RString’ has no member named ‘len’
mmap.c: In function ‘mm_append’:
mmap.c:1554: error: ‘struct RString’ has no member named ‘len’
mmap.c: In function ‘mm_i_bang’:
mmap.c:1843: error: ‘struct RString’ has no member named ‘len’
make: *** [mmap.o] Error 1

Has anyone try this before?
Or are there any other methods recommended to do “mmap”?

Thanks
Sandy

If you’re talking about the “mmap” gem, then it’s apparently not
1.9-ready. Maybe this could be easily fixed, but the last release was
in 2009 and the project looks abandoned.

Maybe try “simple-mmap” - I was able to install it on 1.9.3. (Just
checked.)

– Matma R.

Bartosz Dziewoński wrote in post #1055752:

If you’re talking about the “mmap” gem, then it’s apparently not
1.9-ready. Maybe this could be easily fixed, but the last release was
in 2009 and the project looks abandoned.

Maybe try “simple-mmap” - I was able to install it on 1.9.3. (Just
checked.)

– Matma R.

Yeah, simple-mmap works! Thanks a bunch~