2011-03-13 56 views
1

當我運行rake db:migrate時,我得到了未初始化的常量MysqlCompat :: MysqlRes。未初始化的常量MysqlCompat :: MysqlRes

所以這裏是我的故事。我將系統升級到雪豹,我有一個現有的項目,運行良好。我試圖升級一些東西,其中之一是MySQL到64位。那是當一切都出錯的時候。所以如果我做了以下工作,我可以從我的工作/ myproject目錄中得到以下結果。

文件,該文件的mysql的/ usr /本地/ MySQL的/斌/ MySQL的:的Mach-O可執行i386的 文件,紅寶石在/ usr/local/bin目錄/紅寶石:的Mach-O可執行i386的

所以我真的穿上」我知道我在哪裏站得住這一點。我以爲我安裝了64位版本的MySQL,但這並沒有顯示。

我跑寶石卸載的MySQL然後跑到 須藤ENV ARCHFLAGS = 「 - 拱x86_64的」 寶石安裝mysql - --with-mysql的-配置=在/ usr /本地/ MySQL的/斌/ mysql_config

難道不工作!

誰能幫助?

+0

如果您在使用El Capitan時遇到此問題,請在此處查看我的答案:http://stackoverflow.com/questions/4915461/rails- MySQL的誤差-未初始化常數-mysqlcompatmysqlres/35678289#35678289 – 2016-02-28 03:18:13

回答

2

這個工作對我來說(在OS X 10.6.6):

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/ 
1

問題是,你需要使用相同的架構紅寶石,libmysqlclient和MySQL紅寶石寶石(i386或x86_64)。

我注意到你引用的紅寶石在/usr/local/bin/ruby而不是系統標準位置/usr/bin/ruby - 確保你使用的是你打算使用的紅寶石版本。

0

使用i386的,而不是x86_64的工作對我來說

須藤ENV ARCHFLAGS = 「 - 拱i386的」 寶石安裝mysql - --with-mysql-config =/usr/local/mysql/bin/mysql_config

相關問題