prelink导致ruby报错

在CentOS操作系统中如果从源代码编译并安装Ruby1.9并且安装在/usr/bin/ruby或者/bin/ruby,在过了一段时间之后Ruby会突然不可用并打印下面的错误信息:

ruby: [BUG] iseq_compile_each: unknown node: NODE_METHOD

这个问题是由于prelink修改了ruby程序导致不能正确载入共享库程序。

关于具体prelink的功能参看以下链接:

http://www.eefocus.com/article/09-04/71629s.html

解决方法:

1 在prelink配置文件/etc/prelink.conf中加入

-b /usr/bin/ruby

这样prelink就不会修改ruby程序

2 删除prelink包

你可能感兴趣的:(html,centos,Ruby)