1

使用的命令: bundle exec rcov -I lib test/unit/account_test.rb --rails

Ruby 版本:ruby 1.8.7(2011-06-30 补丁级别 352)[i686-linux] RCov 版本:0.5.0.1

*** glibc detected *** ruby1.8: munmap_chunk(): invalid pointer: 0x0aa49820 ***

请帮忙

此错误消息后跟一个巨大的回溯,例如,

/lib/i386-linux-gnu/libc.so.6(+0x75ee2)[0x795ee2]
/lib/i386-linux-gnu/libc.so.6(+0x765c5)[0x7965c5]
/usr/lib/libruby1.8.so.1.8(+0x4cc28)[0x15cc28]
/usr/lib/libruby1.8.so.1.8(ruby_xmalloc+0x8d)[0x15d1dd]
/usr/lib/libruby1.8.so.1.8(rb_str_buf_new+0x58)[0x1aad68]
/usr/lib/libruby1.8.so.1.8(+0x555cc)[0x1655cc]
/usr/lib/libruby1.8.so.1.8(+0x55748)[0x165748]
/usr/lib/libruby1.8.so.1.8(ruby_yyparse+0x6080)[0x1892c0]
/usr/lib/libruby1.8.so.1.8(+0x7dff8)[0x18dff8]
/usr/lib/libruby1.8.so.1.8(+0x95566)[0x1a5566]
/usr/lib/libruby1.8.so.1.8(rb_load+0x5ae)[0x1524fe]
/usr/lib/libruby1.8.so.1.8(rb_require_safe+0x5b4)[0x152c94]
/usr/lib/libruby1.8.so.1.8(rb_f_require+0x27)[0x152db7]
/usr/lib/libruby1.8.so.1.8(+0x343ae)[0x1443ae]
/usr/lib/libruby1.8.so.1.8(+0x34c01)[0x144c01]
/usr/lib/libruby1.8.so.1.8(+0x3a404)[0x14a404]
/usr/lib/libruby1.8.so.1.8(+0x3e667)[0x14e667]
.
.
.
.

这些消息后面是内存映射

======= Memory map: ========
00110000-001f7000 r-xp 00000000 08:05 1180164    /usr/lib/libruby1.8.so.1.8.7
001f7000-001f8000 ---p 000e7000 08:05 1180164    /usr/lib/libruby1.8.so.1.8.7
001f8000-001f9000 r--p 000e7000 08:05 1180164    /usr/lib/libruby1.8.so.1.8.7
001f9000-001fb000 rw-p 000e8000 08:05 1180164    /usr/lib/libruby1.8.so.1.8.7
001fb000-0020b000 rw-p 00000000 00:00 0 
0020b000-0020e000 r-xp 00000000 08:05 1328035    /lib/i386-linux-gnu/libdl-2.15.so
0020e000-0020f000 r--p 00002000 08:05 1328035    /lib/i386-linux-gnu/libdl-2.15.so
0020f000-00210000 rw-p 00003000 08:05 1328035    /lib/i386-linux-gnu/libdl-2.15.so
00210000-0022b000 r-xp 00000000 08:05 1576300    /usr/lib/ruby/1.8/i686-linux/syck.so
0022b000-0022c000 r--p 0001a000 08:05 1576300    /usr/lib/ruby/1.8/i686-linux/syck.so
0022c000-0022d000 rw-p 0001b000 08:05 1576300    /usr/lib/ruby/1.8/i686-linux/syck.so
0022d000-00273000 r-xp 00000000 08:05 1576296    /usr/lib/ruby/1.8/i686-linux/openssl.so
00273000-00274000 r--p 00045000 08:05 1576296    /usr/lib/ruby/1.8/i686-linux/openssl.so
00274000-00275000 rw-p 00046000 08:05 1576296    /usr/lib/ruby/1.8/i686-linux/openssl.so
00275000-00277000 r-xp 00000000 08:05 1847956    /home/vinoth/prj/coachportal/branches/neo_warranty/vendor/local/ruby/1.8/gems/rcov-0.5.0.1/lib/rcovrt.so
00277000-00278000 r--p 00001000 08:05 1847956    /home/vinoth/prj/coachportal/branches/neo_warranty/vendor/local/ruby/1.8/gems/rcov-0.5.0.1/lib/rcovrt.so
00278000-00279000 rw-p 00002000 08:05 1847956    /home/vinoth/prj/coachportal/branches/neo_warranty/vendor/local/ruby/1.8/gems/rcov-0.5.0.1/lib/rcovrt.so
00279000-00284000 r-xp 00000000 08:05 1576309    /usr/lib/ruby/1.8/i686-linux/bigdecimal.so
4

1 回答 1

0

检查您的 GEMFILE,删除 gemfile 中为 rcov 提供的本地路径,在本地机器上安装 rcov。进行捆绑安装。运行,./bundle exec rake rcov 如果您没有 rake,请从他们提到的示例 rake 任务的 rcov 文件中创建一个 rake 文件。

于 2013-07-02T09:20:59.510 回答