2012-07-26 118 views
0

我試圖在本地運行rake任務,並且出現一個奇怪的錯誤。Rake任務會破壞我的Ruby ...壞Rake任務

$ rake alert_notification --trace 
** Invoke alert_notification (first_time) 
** Invoke environment (first_time) 
** Execute environment 
** Execute alert_notification 
/Users/bendowney/.rvm/gems/[email protected]/bin/rake(65399,0x7fff73799960) malloc: *** error for object 0x8: pointer being freed was not allocated 
*** set a breakpoint in malloc_error_break to debug 
Abort trap: 6 

奇怪的是,我沒有使用給定的gemset(@globaL)。當我運行 $ rvm gemset list

它顯示正確的gemset。

據我所知,這並不影響我的其他應用程序的工作方式。雖然我不完全確定。

並建議如何解決這個問題?

+0

在rails dir中是否有任何.rvmrc文件? – PriteshJ 2012-07-26 17:17:07

+0

應用程序的根目錄中有一個.rvmrc文件。 – 2012-07-26 17:21:14

回答

0

不知何故,在我們編寫rake任務的過程中,這個問題已經完全消失了。所以我想這篇文章的答案是「編寫有效的rake任務」。

1

只是猜測,它看起來像你的OSX鏗鏘編譯紅寶石,有兩種方法可以得到適當的編譯器的紅寶石:OSX,GCC的安裝程序和:

rvm get head 
rvm requirements # read the part on homebrew apple gcc42 

得到適當的編譯器後,你需要重新安裝紅寶石:

rvm reinstall 1.9.3 

作爲@global寶石 - 它在給定的紅寶石所有gemsets包括默認的寶石(沒有任何@...)繼承。