2012-09-11 24 views
14

私はrvmを1.15.8にアップグレードし、zshに何らかの問題があってから1.15.7に戻ってきました。ダウングレード後、私のRuby 1.9以降のバージョンは正常に機能しましたが、1.8.7は再びインストールされません。rvmはMacOS X Mountain Lionに1.8.7-p352をインストールできません

発生している2個のエラーがあります。

Error running 'patch -F 25 -p1 -N -f <"/Users/me/.rvm/patches/ruby/1.8.7/stdout-rouge-fix.patch"', please read /Users/me/.rvm/log/ruby-1.8.7-p352/patch.apply.stdout-rouge-fix.log 

は、そのファイルの内容は次のとおりです。

[2012-09-11 01:05:59] patch -F 25 -p1 -N -f <"/Users/me/.rvm/patches/ruby/1.8.7/stdout-rouge-fix.patch" 
patching file lib/mkmf.rb 
Hunk #1 FAILED at 201. 
1 out of 1 hunk FAILED -- saving rejects to file lib/mkmf.rb.rej 

と:

Error running 'make ', please read /Users/me/.rvm/log/ruby-1.8.7-p352/make.log 

メイクを実行中にエラーが発生しました。インストールを中止する。私がサポートしているアプリケーションの

Fail to find [tclConfig.sh, tkConfig.sh] 
Use MacOS X Frameworks. 

Find Tcl/Tk libraries. Make tcltklib.so which is required by Ruby/Tk. 
gcc-4.2 -I. -I../.. -I../../. -I../.././ext/tk -DHAVE_RB_SAFE_LEVEL -DHAVE_RB_HASH_LOOKUP -DHAVE_RB_PROC_NEW -DHAVE_RB_OBJ_TAINT -DHAVE_ST_PTR -DHAVE_ST_LEN -DRUBY_VERSION=\"1.8.7\" -DRUBY_RELEASE_DATE=\"2011-06-30\" -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -DWITH_TCL_ENABLE_THREAD=0 -fno-common -g -O2 -fno-common -pipe -fno-common -c stubs.c 
In file included from stubs.c:10: 
/usr/include/tk.h:78:23: error: X11/Xlib.h: No such file or directory 
In file included from stubs.c:10: 
/usr/include/tk.h:549: error: expected declaration specifiers or ‘...’ before ‘Window’ 
/usr/include/tk.h:549: error: ‘Window’ declared as function returning a function 
/usr/include/tk.h:552: error: expected declaration specifiers or ‘...’ before ‘XEvent’ 
/usr/include/tk.h:561: error: expected specifier-qualifier-list before ‘Tk_ClassCreateProc’ 
/usr/include/tk.h:655: error: expected specifier-qualifier-list before ‘Bool’ 
/usr/include/tk.h:677: error: expected specifier-qualifier-list before ‘Bool’ 
/usr/include/tk.h:756: error: expected specifier-qualifier-list before ‘Display’ 
/usr/include/tk.h:902: error: expected declaration specifiers or ‘...’ before ‘XPoint’ 
/usr/include/tk.h:996: error: expected declaration specifiers or ‘...’ before ‘Display’ 

ワン1.8.7です:

と、そのファイルの内容が(エラーで始まる最初の数行)です。私は水の中で死んでいる。これはMountain Lion vs. rvmの問題かもしれないようです。誰かが私を正しい方向に向けることができますか?

UPDATE:私は行って、最初のエラーを乗り越えた

だけではなく、「インストール」の「再インストール」。 1.8.7-p352が "rvm list rubies"コマンドで与えられたルビのリストになかったとしても。

+0

これをhttp://serverfault.com/やhttp://superuser.com/ – maxdec

+0

に投稿してください。ほとんどのRVMに関する質問に回答します。そのほとんどはここに掲載されています。おそらく答えを得るための時間。 – mpapis

答えて

33

それはルビー1.8.7でTcl/Tkを検出するには、解決策は、それを無効にすることで問題です:

rvm reinstall 1.8.7 --without-tcl --without-tk 

Tcl/Tkを必要とする他のソリューション:https://stackoverflow.com/a/11666019/497756

+0

tcl/tkとは何ですか?どのように私はそれらが必要になります知っているのですか?編集:私はRubyのGUIを構築したいときにはtclとtkだけ必要ですか? (http://rubylearning.com/satishtalim/ruby_tk_tutorial.html) – crispy

+0

あなたが何をしているのか分からなければ、それは本当に古い方法であり、インターフェイスが非常に醜いのでめったに使用されない – mpapis

+0

これらをデフォルトで含めることは非常に悪い考えです。 – tadman

6

私は思うIここでsfに関する2つの同様の質問で終わった。私の主な問題は、マウンテンライオンのtcl.hインクルードファイル(場所:/usr/include/tcl.h symlinked)が "X11/Xlib.h"の内部参照を解決できなかったことです。私はhomebrewを使ってtclとtkをインストールすると解決できるXlib.hへのパスを生成することで問題を解決できると思っていました。

brew install tcl 

と::

brew install tk 

と:だから私は走った

rvm remove 1.8.7-p352 
rvm install 1.8.7-p352 

をし、それが働きました。しかし、上記のミハエルの答えはちょうどよく働いたと思います。この回答は、人々がtclとtkが必要なものを構築するのに役立ちます。

+0

自作はもはやtclとtkを持っていないようです。 –

+0

'brew install homebrew/dupes/tcl-tk'が動作するはずです。 –

関連する問題