如dm-rails gem网站(https://github.com/datamapper/dm-rails)所说,我正在做
* rails new project_name -m http://datamapper.org/templates/rails.rb -d mysql *
问题是“-d mysql”。 一切都在sqlite中工作。
但是我得到了mysql [BUG] rb_gc()上的跨线程违规 (空值) 中止陷阱
我在Mac雪豹10.6.4,红宝石1.9.2通过rvm,rails 3.0.1,dm-rails 1.0.4
heeeelp。它让我疯狂了3个小时
我终于得到了它的工作,并为此喋喋不休**
http://railspath.blogspot.com/2010/11/datamapper-rails-3-and-mysql-in-rvm-on.html
答案 0 :(得分:2)
没有必要使用ARCHFLAGS。作为维护者,我认为每一个必要性都是一个bug。首选方法是在PATH中使用mysql_config。如果是这种情况,编译应该是成功的(如果您正确安装了MySQL)。
问题的另一个潜在原因可能是您的MySQL安装是32位而不是64位。您可以通过执行检查(请使用正确的路径):
file / path / to / your / bin / mysql
它应该输出如下内容:
Mach-O 64位可执行文件x86_64
答案 1 :(得分:0)
如果没有正确安装“do_mysql”gem,则会出现错误。
应该从www.mysql.com安装mysql-serverrvm 1.9.2
然后没有sudo
* env ARCHFLAGS =“ - arch x86_64”gem install do_mysql - --with-mysql-dir = / usr / local / mysql --with-mysql-lib = / usr / local / mysql / lib --with -mysql-包括=的/ usr /本地/ MySQL的/ *包括
BR 米