论坛首页 编程语言技术论坛

Mac OS中的mysql驱动

浏览 9989 次
精华帖 (0) :: 良好帖 (3) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-12-26   最后修改:2009-12-27
说一下折腾了我大半天的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还是不行。这次报
uninitialized constant MysqlCompat::MysqlRes


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

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


进行mysql-ruby的驱动安装。

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

总结:所有东西最好都用最新版本的(当然语言是另外一回事)。
PS: 苹果的多桌面、1-4指禅、快捷键、命令行等真是很好用。VERY GOOD。所以麻烦就麻烦点了,值!
   发表时间:2009-12-27  
lz用的是SL自带的ruby吗?
0 请登录后投票
   发表时间:2009-12-27  
和lz一样的机器,期待有人写一篇mac下的ror最佳环境配置文章,或者其他mac下ror开发经验分享。
0 请登录后投票
   发表时间:2009-12-27  
t0uch 写道
lz用的是SL自带的ruby吗?

没错,用的是/Library/Ruby路径下面的那个,1.8.7版本的。
好像装新的Ruby到/usr/local/中去是一件很麻烦的事情,所以没敢换。
0 请登录后投票
   发表时间:2009-12-27  
thiefhandsome 写道
和lz一样的机器,期待有人写一篇mac下的ror最佳环境配置文章,或者其他mac下ror开发经验分享。


除了mysql驱动,其他可以参考这篇文章的:
http://www.iteye.com/topic/314709
0 请登录后投票
   发表时间:2009-12-28  
mornstar 写道
thiefhandsome 写道
和lz一样的机器,期待有人写一篇mac下的ror最佳环境配置文章,或者其他mac下ror开发经验分享。


除了mysql驱动,其他可以参考这篇文章的:
http://www.iteye.com/topic/314709


thanks
0 请登录后投票
   发表时间:2009-12-30  
我折腾了一个星期才折腾好, 哎。。早点看到这个帖子就好了
0 请登录后投票
   发表时间:2009-12-30  
没有带安装盘吗? 安装盘里的xcode应该就可以吧,没注意是什么版本的。我做Java Jin开发的时候,Mac可是真怪。最后还是放弃了,改成别的解决方案。
0 请登录后投票
   发表时间:2009-12-30  
SL默认启动是64位的。。你如果想进32位模式,启动的时候输入-x32

不过64位还是速度有快些``

SL的安装盘里自带XCODE
0 请登录后投票
   发表时间:2009-12-30  
楼主绕圈子了,其实关键只是在 -- --with-mysql-config=/usr/local/mysql/bin/mysql_config

和 xcode 没有什么关系,而且不需要下载,在 apple 的安装光盘里面就有
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics