danmayer/churn

Error: lazy symbol binding failed: Symbol not found

jscruggs opened this issue · 7 comments

When I try to run churn 0.0.4 with ruby 1.9.1p376 (2009-12-07 revision 26041) [i386-darwin10.2.0] I get this stack output:

dyld: lazy symbol binding failed: Symbol not found: _rb_intern2
Referenced from: /Users/jake/.rvm/gems/ruby-1.9.1-p376/gems/json-1.2.0/ext/json/ext/parser.bundle
Expected in: flat namespace

dyld: Symbol not found: _rb_intern2
Referenced from: /Users/jake/.rvm/gems/ruby-1.9.1-p376/gems/json-1.2.0/ext/json/ext/parser.bundle
Expected in: flat namespace

Trace/BPT trap

I haven't tried to run yet on 1.9.1 I will get set up on my machine with RVM and try to test that out... Wondering if pure-json might be better than Json from a compat standpoint. I don't think I hit it enough to really need the speed on this gem.

I tried 1.9.1 and it seems to work for me locally, but not from the gem. I don't know much about RVM or 1.9.1 not sure what is going on.

  • pull latest
  • rvm use 1.9.1...
  • rake test (passes)
  • ruby bin/churn (works)
  • gem install churn (installs)
  • churn Gives the error you mentioned / below

Any ideas?

~/projects/churn(master) > churn
dyld: lazy symbol binding failed: Symbol not found: _rb_intern2
Referenced from: /Users/danmayer/.rvm/gems/ruby-1.9.1-p378/gems/json-1.2.0/ext/json/ext/parser.bundle
Expected in: flat namespace

dyld: Symbol not found: _rb_intern2
Referenced from: /Users/danmayer/.rvm/gems/ruby-1.9.1-p378/gems/json-1.2.0/ext/json/ext/parser.bundle
Expected in: flat namespace

I just started using rvm about a week ago so I don't have any powerful insights. The guy who runs rvm is pretty responsive (he helped me solve an iconv problem I was having) - try pinging him.

Actually I am pretty sure it is a rvm issue, because

which churn
/Users/danmayer/.rvm/gems/ruby-1.9.1-p378/bin/churn
~/projects/churn(master) > ruby /Users/danmayer/.rvm/gems/ruby-1.9.1-p378/bin/churn

which works...

I will ping the RVM guy, and see if he has any ideas.

OK I just had to make sure the rvm code was in my bash_profile correctly start a new shell, and then run churn and the error went away. It is a path issue related to RVM, but churn itself will run in Ruby 1.9.1. Give it another shot and let me know if it works. Also try which churn, and then run churn with the full path with Ruby 1.9.1 and see if that works. For now I think I am calling this resolved.

skiz commented

I have had similar issues with autotest and rails 3 on 1.9.1, It seems that inline isn't quite working without setting up additional paths, or calling it directly. I was able to get around this error simply by doing a which autotest and calling it with the full path. Of course this brings up other path issues with redgreen, but it works. I'd suggest trying to run it directly with the full path and see if that helps.

Cool yeah whenever I used full path everything worked for me. I don't think the issue is real. When I cleared all environment and retry with RVM it works, but it seems to occasionally break.