dyld: lazy symbol binding failed: Symbol not found: _rb_funcallv

Issue #184 resolved
Anthony Ross
created an issue

Hi - When I run my test suite I get:

/Users/anthonyrossdj/.rvm/gems/ruby-2.1.1/gems/mail-2.5.4/lib/mail/network/delivery_methods/sendmail.rb:53: warning: shadowing outer local variable - to
dyld: lazy symbol binding failed: Symbol not found: _rb_funcallv
  Referenced from: /Users/anthonyrossdj/.rvm/gems/ruby-2.1.1/gems/pg-0.17.1/lib/pg_ext.bundle
  Expected in: flat namespace

dyld: Symbol not found: _rb_funcallv
  Referenced from: /Users/anthonyrossdj/.rvm/gems/ruby-2.1.1/gems/pg-0.17.1/lib/pg_ext.bundle
  Expected in: flat namespace

My gemfile right now is:

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.1.0'

# Use postgresql as the database for Active Record
gem 'pg'

# Use SCSS for stylesheets

# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'

# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'

# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'

# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks

# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder

group :doc do
  # bundle exec rake doc:rails generates the API under doc/api.
  gem 'sdoc', require: false
end


group :development, :test do
  gem 'rspec-rails'
  gem 'factory_girl_rails'

end
#

Comments (3)

  1. Michael Granger repo owner

    Did you perhaps just recently upgrade your Ruby? Or are you maybe running a different version of Ruby than the version you installed the gem with?

    That symbol rb_funcallv is a function in Ruby itself, and errors like this typically happen when you've changed the Ruby shared library (either by replacing it or just invoking a different one) without also recompiling all of your binary gems.

    At any rate, this isn't a problem that can be fixed in pg: if extensions can't find core Ruby API functions, there's something wrong at a deeper level.

    I'd suggest making sure you're running the Ruby you expect (e.g., by doing puts RUBY_DESCRIPTION somewhere early or something similar), or if you've recently upgraded, doing a gem pristine --all --extensions for all of your gemsets.

  2. Anthony Ross reporter

    Michael - Yes, I did recently upgrade Ruby (in fact I upgraded to Mavericks on Monday which I think was the culprit). I think there were a number of things set up on this computer incorrectly, so thank you for a.) being so prompt and b.) offering some advice even though this wasn't an issue with the PG gem.

    After running

    gem pristine --all --extensions
    

    and re-running my test suite I'm back in biz. Thanks again, I can now stop the gray hairs from taking over my very large, somewhat irregular shaped head.

  3. Log in to comment