开发者

Rails-MySQL Error - uninitialized constant MysqlCompat::MysqlRes

开发者 https://www.devze.com 2023-02-09 11:08 出处:网络
Trying to get a Rails app running on Snow Leopard. Downloaded mysql-5.5.8-osx10.6-x86_64.dmg and ran installer

Trying to get a Rails app running on Snow Leopard.

  • Downloaded mysql-5.5.8-osx10.6-x86_64.dmg and ran installer
  • Ruby 1.8.7 (Default OS X version)
  • Rails 2.3.5

When I attempt to run "rake db:migrate" I get

  • rake aborted!
  • uninitialized constant MysqlCompat::MysqlRes

Yes I know this has been asked before. I have already reviewed the following links and followed the steps included in them and the result is the same each time.

  • Rails, MySQL and Snow Leopard
  • http://techliberty.blogspot.com/2009/12/dealing-with-rake-aborted-uninitialized.html
  • http://www.schmidp.com/2009/06/14/rubyrails-and-my开发者_如何学Gosql-on-snow-leopard-10a380/

Prior to the following commands I run "sudo gem uninstall mysql" followed by "sudo gem clean mysql" based on the above links:

  • sudo gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
  • sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config

It is still failing. I am just flumoxed and would greatly appreciate any help.

Many thanks!


Not had the experience myself and I'm using Snow Leopard, RVM and rails 2.3.5 to 3.0.3, but found another view which deals with the uninstall and reinstall via :

export ARCHFLAGS="-arch i386 -arch x86_64" ;sudo gem install --no-rdoc --no-ri -v=2.7 mysql -- --with-mysql-dir=/usr/local/mysql --with-mysql-config=/usr/local/mysql/bin/mysql_config

For more details see the posting at: http://accidentaltechnologist.com/apple/fixing-uninitialized-constant-mysqlcompatmysqlres-error-on-snow-leopard/


For El Capitan you don't need to uninstall / install.

Just found your libmysqlclient.18.dylib file. Location will depent on how you installed mysql

locate libmysqlclient.18.dylib

Once you have the path create a symb link as:

ln -s /usr/local/mysql-5.5.20-osx10.6-x86_64/lib/libmysqlclient.18.dylib /usr/local/lib/libmysqlclient.18.dylib

You have two change first param according to your dynamic library location (use the first command).

On El Capitan the link should be to /usr/local/lib. On previous versions link was to /usr/lib/

0

精彩评论

暂无评论...
验证码 换一张
取 消