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

yajl-ruby throws exception on OS X Lion 10.7.4, ruby 1.9.3 #600

Closed
WattsInABox opened this issue May 21, 2012 · 7 comments
Closed

yajl-ruby throws exception on OS X Lion 10.7.4, ruby 1.9.3 #600

WattsInABox opened this issue May 21, 2012 · 7 comments
Milestone

Comments

@WattsInABox
Copy link

running rake test yields:

Starting redis for testing at localhost:9736...
Run options: --seed 35876

# Running tests:

....dyld: lazy symbol binding failed: Symbol not found: _yajl_set_static_value
Referenced from: /Users/williamrwatson/.rvm/gems/ruby-1.9.3-p194@resque/gems/yajl-ruby-1.0.0/lib/yajl/yajl.bundle
Expected in: flat namespace

dyld: Symbol not found: _yajl_set_static_value
Referenced from: /Users/williamrwatson/.rvm/gems/ruby-1.9.3-p194@resque/gems/yajl-ruby-1.0.0/lib/yajl/yajl.bundle
Expected in: flat namespace

rake aborted!
@WattsInABox
Copy link
Author

Solution is to upgrade yajl-ruby to ~> 1.1. I can actually submit a pull request for this right now, but I wanted to make sure the issue was tracked properly

@geemus
Copy link

geemus commented Jun 26, 2012

@BillyWatson - I was unable to reproduce the original error. I did a fresh checkout, bundle install and then bundle exec rake and everything passed. I'm on ruby 1.9.3-p125 and Mac OS X 10.7.4. Perhaps you have some other configuration problem?

@hone
Copy link
Member

hone commented Jun 26, 2012

I had some coworkers try to repro this to no avail with ruby 1.9.3p194, OS X 10.7.4, and yajl-ruby (1.0.0). I'm going to go ahead and close this.

@hone hone closed this as completed Jun 26, 2012
@WattsInABox
Copy link
Author

Maybe there is another configuration problem on my machine then. I'll try this again later. At a loss, at the moment, as to what that config problem may be. Thanks for trying.

@hone
Copy link
Member

hone commented Jun 26, 2012

@BillyWatson if you do find anything else out, please share! Thanks for reporting.

@schneems
Copy link

@BillyWatson, I tried this out on my machine and all tests passed. If you find the config on your machine that reproduces this let me know. Here is my be gem list output

activesupport (3.2.6)
airbrake (3.1.1)
builder (3.0.0)
bundler (1.1.4)
hoptoad_notifier (2.4.11)
i18n (0.6.0)
mocha (0.9.12)
multi_json (1.3.6)
rack (1.4.1)
rack-protection (1.2.0)
rack-test (0.6.1)
rake (0.9.2.2)
redis (2.2.2)
redis-namespace (1.0.3)
resque (1.20.0)
sinatra (1.3.2)
tilt (1.3.3)
vegas (0.1.11)
yajl-ruby (1.0.0)

@yaauie
Copy link
Member

yaauie commented Oct 10, 2012

Apparently there is/was an issue with the yajl c not being compatible with clang that produces this error (more info on implementations of static and inline here ).

This issue does not occur for us (even on older Yajl versions) when we build Ruby with apple-gcc42 from homebrew.

# update homebrew
$ brew update

# install apple-gcc42 and its dependencies
$ brew install autoconf automake
$ brew install https://raw.github.com/Homebrew/homebrew-dupes/master/apple-gcc42.rb

# install 1.9.3 against the gcc you just installed
$ rvm install 1.9.3 --with-gcc=/usr/local/bin/gcc-4.2

That said, clang has its own benefits that you're missing out on by using the old gcc.

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

5 participants