Mac OS中的mysql驱动

本文记录了在Mac OS X 10.6上搭建Rails环境的过程,包括解决mysql驱动安装失败的问题,最终实现了项目的迁移。
说一下折腾了我大半天的RoR环境搭建,总算是搞好了。
以前用windows做RoR,也就升级一下gem和mysql驱动,貌似很简单。
雪豹加上新版本的冬冬真是费了很久才配好。

新买的机器MacBook pro 990,为的当然是mac os。
默认配机Mac OS x 10.6。
上来从machome下载的的一个mysql 5.1(但是是32位的),然后再装好CocoaMySQL调试了一下,准备开始用mate开发了。建好项目,建好scaffold,准备rake db:migrate的时候报错:
rake aborted!!! The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql. 


mysql驱动不行?
然后升级一下gems
sudo gem update --system


再重装一下mysql,
sudo gem install mysql


发现驱动都装不了。报错大致是这样的:
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h

结果gem就用了一个默认的mysql-1.8.2来顶替。

这个ruby头文件不行怎么办。rails和gems也都是新的亚。

然后网上搜了一堆。貌似中文的帖子中没有好的解决方案。都是说升级一下驱动就行。
后来看到stackOverFlow和ruby-forum上面有几个说法。

先升级xcode到3.2.1(目前最新),因为我是在machome的FTP上面下的xcode,是3.1的,原来对MAC OS X 10.6的支持不够。(比如对ruby)

也不知道怎么卸载原来的xcode
700多M的xcode 3.2.1下好直接安装。

这回重启之后,gem install mysql居然就正常了。
但migrate还是不行。这次报
[code]uninitialized constant MysqlCompat::MysqlRes[/code]

再去查,原来是必须要用64位的mysql。OK,再坚持一把,去官网下载好信mysql for mac x86_64。直接安装。(看了一下/usr/local/中mysql只是一个link,装好就指到最新的路径去了。所以老的不受影响。

怕影响环境,再重启后,输入:
[code]sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config[/code]

进行mysql-ruby的驱动安装。

一番移花接木之后,migrate终于成功了。
吐血。

总结:所有东西最好都用最新版本的(当然语言是另外一回事)。
PS: 苹果的多桌面、1-4指禅、快捷键、命令行等真是很好用。VERY GOOD。所以麻烦就麻烦点了,值!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值