arthurnn / memcached

A Ruby interface to the libmemcached C client
Academic Free License v3.0
432 stars 125 forks source link

Symbol not found: _memcached_free (LoadError) #55

Closed swalkinshaw closed 13 years ago

swalkinshaw commented 13 years ago

Getting the following error on load:

/Users/scott/.rvm/gems/ruby-1.8.7-p352@global/gems/memcached-1.2.7.1/lib/rlibmemcached.bundle: dlopen(/Users/scott/.rvm/gems/ruby-1.8.7-p352@global/gems/memcached-1.2.7.1/lib/rlibmemcached.bundle, 9): Symbol not found: _memcached_free (LoadError) Referenced from: /Users/scott/.rvm/gems/ruby-1.8.7-p352@global/gems/memcached-1.2.7.1/lib/rlibmemcached.bundle Expected in: flat namespace in /Users/scott/.rvm/gems/ruby-1.8.7-p352@global/gems/memcached-1.2.7.1/lib/rlibmemcached.bundle - /Users/scott/.rvm/gems/ruby-1.8.7-p352@global/gems/memcached-1.2.7.1/lib/rlibmemcached.bundle

As you can see, this is using ruby-1.8.7-p352 with rvm on OS X 10.7 (Lion).

memcached 1.4.5 is installed via homebrew. Tried with and without --enable-sasl.

swalkinshaw commented 13 years ago

Also tried memcached 1.2.8 with no difference. I saw issue #6 with a similar error so I checked the architecture:

file lib/rlibmemcached.bundle lib/rlibmemcached.bundle: Mach-O 64-bit bundle x86_64

swalkinshaw commented 13 years ago

Well I fixed it. I believe it was adding this my .zshrc:

export ARCHFLAGS="-arch i386 –arch x86_64"

and reinstalling the gem.

samuelgiles commented 4 years ago

Incase anyone bumps into this issue when running macOS, you may have linked binutils via brew accidentally. Running the following should get you back up and running:

gem uninstall memcached
brew unlink binutils
gem install memcached