gpt4 book ai didi

ruby-on-rails - 退出时出现 Ruby 1.9 段错误

转载 作者:数据小太阳 更新时间:2023-10-29 08:05:45 28 4
gpt4 key购买 nike

我在这里变得疯狂。我只是想在我的服务器上部署一个小测试应用程序,每当 Ruby 解释器退出时(即在运行 rake assets:precompile 或退出控制台等之后),我都会收到段错误.刚跑完

script/rails r -e production "puts 1"

将导致

1
[BUG] Segmentation fault
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux]

-- C level backtrace information -------------------------------------------
/usr/local/rvm/rubies/ruby-1.9.3-p0/lib/libruby.so.1.9 [0x7f92fd681f25]
/usr/local/rvm/rubies/ruby-1.9.3-p0/lib/libruby.so.1.9 [0x7f92fd55608c]
/usr/local/rvm/rubies/ruby-1.9.3-p0/lib/libruby.so.1.9(rb_bug+0xb8) [0x7f92fd556208] error.c:277
/usr/local/rvm/rubies/ruby-1.9.3-p0/lib/libruby.so.1.9 [0x7f92fd60db77]
/lib/libpthread.so.0 [0x7f92fd2e5a80]
/lib/libselinux.so.1 [0x7f92f0db831d]
/lib/libselinux.so.1 [0x7f92f0dab57f]

-- Other runtime information -----------------------------------------------

Segmentation fault

请注意,脚本/Rake 任务,无论是否运行,但在退出时出现 → 段错误。

奇怪的是,这 1. 只发生在我的服务器上(Debian 5.0(Lenny)、rvm、Ruby 1.9.2 或 1.9.3)并且只发生在生产模式下。

所以我很自然地想到:一些生产组 gem 导致了这个,我尝试在我的 Gemfile 中关闭生产组,以及切换生产<->开发 gem 。没变;每次 Ruby 退出 → 段错误。

我能做什么?有哪些调试技巧可以找出问题的根源?这个段错误的回溯给我留下了绝对没有任何提示。

(我尝试删除 Ruby,然后重新编译,我尝试了 1.9.2-p290 1.9.3,但结果相同。)

好的,回溯时间:

#0  rb_string_value (ptr=0x5a8) at string.c:1406
1406 VALUE s = *ptr;
(gdb) where
#0 rb_string_value (ptr=0x5a8) at string.c:1406
#1 0x00007f3c5b619428 in rb_string_value_cstr (ptr=0x5a8) at string.c:1424
#2 0x00007f3c5b6708cc in rb_vm_bugreport () at vm_dump.c:826
#3 0x00007f3c5b549f1c in report_bug (file=<value optimized out>, line=<value optimized out>, fmt=0x7f3c5b69e88b "Segmentation fault", args=0x66cd40) at error.c:258
#4 0x00007f3c5b54a098 in rb_bug (fmt=0x7f3c5b69e88b "Segmentation fault") at error.c:277
#5 0x00007f3c5b5fe037 in sigsegv (sig=<value optimized out>, info=<value optimized out>, ctx=<value optimized out>) at signal.c:609
#6 <signal handler called>
#7 0x00007f3c4e6fa18d in fini_context_translations () at setrans_client.c:211
#8 0x00007f3c4e6ed5df in __do_global_dtors_aux () from /lib/libselinux.so.1
#9 0x0000000000400850 in setlocale@plt ()
#10 0x00007fffffffdec0 in ?? ()
#11 0x00007f3c4e6fb991 in _fini () from /lib/libselinux.so.1
#12 0x000000000000005f in ?? ()
#13 0x00007f3c5b933d94 in ?? () from /lib64/ld-linux-x86-64.so.2
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

最佳答案

好的,我明白了!

这实际上是错误 #505920 - python-clutter: ends with segmentation fault 在 libselinux 中,前一段时间已修复,但更新没有进入 Debian 5.0 (莱尼)(?)。

我冒昧地从 Debian 6.0 安装了 libselinux1 deb。 (挤)。我不确定这是否真的是个好主意,但至少问题已经解决。

关于ruby-on-rails - 退出时出现 Ruby 1.9 段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7968951/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com