我在Snow Leopard中成功安装了MySql x86_64,Ruby和Ruby Gems似乎安装得正确:
$ which mysql /usr/local/mysql/bin/mysql $ which ruby /usr/bin/ruby $ which gem /usr/bin/gem $ mysql Your MySQL connection id is 404 Server version: 5.1.37 MySQL Community Server (GPL) $ ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0] $ gem -v 1.3.5
不幸的是我在安装mysql gem时遇到错误:
$ sudo gem update --system ... $ sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config Building native extensions. This could take a while... ERROR: Error installing mysql: ERROR: Failed to build gem native extension. /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb --with-mysql-config=/usr/local/mysql/bin/mysql_config mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/mysql-2.8.1 for inspection.
答案 0 :(得分:26)
我认为你应该在重新编译之前先尝试卸载旧的mysql gem
sudo gem uninstall mysql
sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
答案 1 :(得分:12)
安装与Snow Leopard捆绑在一起的Xcode解决了这个问题。
答案 2 :(得分:2)
对我来说,它正在添加UNIX Tools选项(如果我准确地记住了名称),其中包括标题。当我最初安装XCode时,我没有包含这个组件,因为我不认为我会编写UNIX代码。我不知道......
答案 3 :(得分:1)
如果您使用MacPorts安装了MySQL 5,请使用命令:
sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/opt/local/bin/mysql_config5
答案 4 :(得分:1)
当我更新到Lion时,我遇到了这个问题。在这种情况下,我何时到app store并下载最新的Xcode。然后我卸载并重新安装了数据库。
此问题与更新期间断开的链接有关。 Ruby喜欢在/ System中,而Apple喜欢将ruby放在/ Developer。
答案 5 :(得分:0)
遇到了同样的问题: 尝试了大部分解决方案:最后
编辑app / config / database.yml,将适配器更改为mysql2
production:
adapter: mysql2
database: commissi_production
username: root
password: root
host: localhost
&安培;在终端上运行
gem install activerecord-mysql2-adapter
解决了这个问题。