Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't install/upgrade through RVM #3703

Closed
RoxasShadow opened this issue Oct 14, 2016 · 16 comments
Closed

Can't install/upgrade through RVM #3703

RoxasShadow opened this issue Oct 14, 2016 · 16 comments

Comments

@RoxasShadow
Copy link

RoxasShadow commented Oct 14, 2016

Problem

I'm trying to upgrade rbx-3.30 to rbx-3.60 through the latest RVM (both stable and head) on a Debian machine.

I had three errors related to missing gems (iirc they were redcard, rubinius/code/trigger and melbourne) that I solved by installing them in ruby-2.3.1.

But still, after these errors went away, the installation didn't proceed because of an error by melbourne.

How to Reproduce

$ rvm upgrade rbx-3.30 rbx-3.60

But right now I can't even run $ rvm install rbx-3.60 as I get the same error every time.

Configuration Details

▶ uname -a
Linux ns319168.ip-91-121-209.eu 3.14.32-xxxx-grs-ipv6-64 #1 SMP Sat Feb 7 11:35:27 CET 2015 x86_64 GNU/Linux
▶ rvm -v
rvm 1.27.0 (master) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]

▶ rvm list

rvm rubies

   rbx-2.5.8 [ x86_64 ]
=* rbx-3.30 [ x86_64 ]
   ruby-2.2.0 [ x86_64 ]
   ruby-2.3.1 [ x86_64 ]

Stack Trace

https://gist.github.com/RoxasShadow/f28cfb9269b41c49456c4dee163e8b71

@RoxasShadow RoxasShadow changed the title Can't install through RVM Can't install/upgrade through RVM Oct 14, 2016
@brixen
Copy link
Member

brixen commented Oct 14, 2016

@RoxasShadow thanks for reporting this issue. Unfortunately, we cannot help you debug RVM, but we can try to figure out if the issue is in Rubinius. Please see the directions under "Building from Source Code".

If you're able to build Rubinius from source, you can file an issue with RVM for the problem. If you cannot build Rubinius from source, we should be able to fix your issue.

@RoxasShadow
Copy link
Author

RoxasShadow commented Oct 14, 2016

Thanks for the suggestion @brixen. I'll file a ticket to RVM as the compilation from source code works although through RVM not, giving the same error even with said tarball.

@RoxasShadow
Copy link
Author

Actually that's not true, at the very end the compilation of Rubinius by tarball failed!

Stacktrace

@RoxasShadow RoxasShadow reopened this Oct 14, 2016
@brixen
Copy link
Member

brixen commented Oct 14, 2016

@RoxasShadow the version of the Rubinius compiler needed to build 3.61 is not compatible with 3.30. Try using MRI 2.3 as your build Ruby.

@RoxasShadow
Copy link
Author

Switched to MRI 2.3.1 and run bundle install, bundle exec rake clean and bundle exec rake build. Output

@brixen
Copy link
Member

brixen commented Oct 14, 2016

@RoxasShadow thanks for running through those manual steps. Could you rebuild using ./configure --debug-build and use bundle exec rake build --trace and when it fails, try running this (you may need to install lldb package first) lldb -f /home/deployer/rbx/rubinius-3.61/bin/rbx -- -v.

@RoxasShadow
Copy link
Author

@brixen here's the output. Thanks.

@brixen
Copy link
Member

brixen commented Oct 15, 2016

@RoxasShadow oops! I forgot to say, type r Enter in lldb. :(

@RoxasShadow
Copy link
Author

Oh, that's why!

deployer@ns319168:~                                                           ⍉
▶ lldb -f /home/deployer/rbx/rubinius-3.61/bin/rbx -- -v
(lldb) target create "/home/deployer/rbx/rubinius-3.61/bin/rbx"
Current executable set to '/home/deployer/rbx/rubinius-3.61/bin/rbx' (x86_64).
(lldb) settings set -- target.run-args  "-v"
(lldb) r
Process 23306 launched: '/home/deployer/rbx/rubinius-3.61/bin/rbx' (x86_64)
Process 23306 stopped
* thread #1: tid = 23306, 0x00000000004d5ac3 rbx`std::basic_regex<char, std::regex_traits<char> >::assign(this=0x00007ea050add6d8, __rhs=0x00007ea050adcc68) + 147 at regex.h:625, name = 'rbx', stop reason = signal SIGILL: illegal instruction operand
    frame #0: 0x00000000004d5ac3 rbx`std::basic_regex<char, std::regex_traits<char> >::assign(this=0x00007ea050add6d8, __rhs=0x00007ea050adcc68) + 147 at regex.h:625
   622      _M_flags = __rhs._M_flags;
   623      _M_original_str = std::move(__rhs._M_original_str);
   624      __rhs._M_automaton.reset();
-> 625      this->imbue(__rhs.getloc());
   626        }
   627
   628        /**

@brixen
Copy link
Member

brixen commented Oct 15, 2016

@RoxasShadow awesome, this is super helpful. Could you run one more command after r stops: thread backtrace all and gist that?

@RoxasShadow
Copy link
Author

@brixen sure, this is the gist. Thanks!

@brixen
Copy link
Member

brixen commented Oct 16, 2016

@RoxasShadow thanks for running that. Unfortunately, it doesn't tell me anything more than the C++ regex implementation is segfaulting on one of the default Rubinius configuration values. This appears to be an issue with your platform. Could you give me all the details so I can try to get a similar vagrant box and repro it locally?

@RoxasShadow
Copy link
Author

@brixen which kind of details do you need?

It's a Kimsufi/OVH server machine running Debian 8.6 with gcc 4.9.2 and LLVM 3.7.1. In the original post you can check the uname too.

@brixen
Copy link
Member

brixen commented Oct 16, 2016

@RoxasShadow ok, cool. Thanks. Let me try to get a machine set up so I can test this.

@brixen
Copy link
Member

brixen commented Nov 5, 2016

@RoxasShadow I'm having trouble getting a Debian 8 box set up. Will continue to work on it.

@brixen
Copy link
Member

brixen commented Jan 3, 2020

I think Debian is on version 11 or something now, so I'm going to close this.

@brixen brixen closed this as completed Jan 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants