2010-06-30 96 views
0

我在安装带有OS X Snow Leopard(10.6.4)的Mac Pro机器上安装memcached ruby​​ gem时出现问题。在Snow Leopard上安装memcached gem时出错 - 错误的架构?

Memcache安装正常,对于大多数项目我使用memcache-client gem没有问题,但是这个当前项目我需要使用memcached gem代替。

安装与env ARCHFLAGS='-arch x86_64' gem install memcached或只是通过正常的gem install memcached既给试图运行应用程序时同样的错误宝石:

(in /src/mojotech/projectr) 
dlopen(/Users/cpjolicoeur/.rvm/gems/ruby-1.8.7-p174/gems/memcached-0.19.7/lib/rlibmemcached.bundle, 9): no suitable image found. 
Did find: /Users/cpjolicoeur/.rvm/gems/ruby-1.8.7-p174/gems/memcached-0.19.7/lib/rlibmemcached.bundle: mach-o, but wrong architecture - /Users/cpjolicoeur/.rvm/gems/ruby-1.8.7-p174/gems/memcached-0.19.7/lib/rlibmemcached.bundle 

然而,在rlibmemcached.bundle运行file给出正确的弓?

[email protected]~/.rvm/gems/ruby-1.8.7-p174/gems/memcached-0.19.7/lib $ file rlibmemcached.bundle 
rlibmemcached.bundle: Mach-O 64-bit bundle x86_64 

我不知道是什么问题,还是如何正确安装memcached宝石我的系统。

回答

2

我在Snow Leopard,Ruby 1.9.1和memcached gem上看到相同的确切错误消息。我在网上搜索了几个小时以获得答案。每个人都认为这个解决方案,它并没有改变错误信息:

# Did Not Work 
sudo gem uninstall 
sudo env ARCHFLAGS='-arch x86_64' gem install memcached 

我也想这样做“耙干净”,并重新运行extconf.rb上的宝石。同样的错误。

最后,我浏览了memcached gem的每个过去版本,直到找到一个与我的系统一起工作的版本。

# This Worked! 
sudo gem uninstall memcached 
sudo gem install --version 0.17.1 memcached --no-ri --no-rdoc 

版本0.17.1的宝石是唯一适用于我的版本。我是一名iPhone开发人员,因此安装了最新版本的XCode,这也许可以解释为什么我的系统不同。

1

这是一个迟到的答案,但希望对于遇到同一问题的人有用。 (在Snow Leopard上使用Ruby 1.9.2)。

安装Perl模块Pod :: Simple,Pod :: Man,Pod :: Checker(通过cpan是最简单的)。

下载最新版本从http://download.tangent.org/ libmemcached的(被libmemcached-0.44.tar.gz因为这个职位的)

执行配置/制作/手动在终端安装的舞蹈:

tar -xzvf libmemcached-0.44.tar.gz 
cd libmemcached-0.44 
./configure 
make 
sudo make install 

在此之后,sudo gem install memcached工作,和Rails 3应用程序运行良好。

+0

只是想补充说,如果你看到这个问题,这也适用于OS X Lion。首先安装libmemcached,然后安装gem。 – Peter 2011-09-29 00:36:46

相关问题