2つの方法ではRubyのアップデートは不可能です

2つの方法ではRubyのアップデートは不可能です

Mac 10.6.8にRubyバージョン1.9.3をインストールしようとしています。

$ \curl -L https://get.rvm.io | bash -s stable --ruby

Oskar-Niburskis-MacBook-Pro:~ oskarniburski$ rvm install ruby-1.9.3-p362
Searching for binary rubies, this might take some time.
No binary rubies available for: osx/10.6/i386/ruby-1.9.3-p362.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
Checking requirements for osx.
Installing requirements for osx.
Updating system.............................................
Installing required packages: autoconf, automake, libtool, pkgconfig, libiconv, libyaml, libffi, readline, libksba, openssl, curl-ca-bundle, sqlite3, zlib, gdbm, ncurses...
Error running 'requirements_osx_port_libs_install autoconf automake libtool pkgconfig libiconv libyaml libffi readline libksba openssl curl-ca-bundle sqlite3 zlib gdbm ncurses',
please read /Users/oskarniburski/.rvm/log/1380238189_ruby-1.9.3-p362/package_install_autoconf_automake_libtool_pkgconfig_libiconv_libyaml_libffi_readline_libksba_openssl_curl-ca-bundle_sqlite3_zlib_gdbm_ncurses.log
Requirements installation failed with status: 1.

私のバージョン:

Oskar-Niburskis-MacBook-Pro:~ oskarniburski$ ruby --version
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin10.0]

ログファイル出力:

Oskar-Niburskis-MacBook-Pro:~ oskarniburski$ cat /Users/oskarniburski/.rvm/log/1380238189_ruby-1.9.3-p362/package_install_autoconf_automake_libtool_pkgconfig_libiconv_libyaml_libffi_readline_libksba_openssl_curl-ca-bundle_sqlite3_zlib_gdbm_ncurses.log
[2013-09-26 19:30:17] requirements_osx_port_libs_install
requirements_osx_port_libs_install () 
{ 
    __rvm_try_sudo port install "$@" || { 
        typeset ret=$?;
        rvm_warn "There were package installation errors, make sure to read the log.";
        return $ret
    }
}
current path: /Users/oskarniburski
command(16): requirements_osx_port_libs_install autoconf automake libtool pkgconfig libiconv libyaml libffi readline libksba openssl curl-ca-bundle sqlite3 zlib gdbm ncurses
Warning: Xcode does not appear to be installed; most ports will likely fail to build.
--->  Computing dependencies for autoconfError: Unable to execute port: can't read "build.cmd": Failed to locate 'make' in path: '/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it?
There were package installation errors, make sure to read the log.

その後、MacPortsを使用してインストールしようとしましたが、まだ機能していませんでした。どんなアイデアがありますか?

Oskar-Niburskis-MacBook-Pro:~ oskarniburski$ sudo port install ruby19
Warning: Xcode does not appear to be installed; most ports will likely fail to build.
--->  Computing dependencies for ruby19Error: Unable to execute port: can't read "build.cmd": Failed to locate 'make' in path: '/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it?

これが私の現在のパスです:

/opt/local/bin:/opt/local/sbin:/usr/local/git/bin:/usr/X11/bin:/Users/oskarniburski/.rvm/bin:/usr/X11R6/bin:/Library/ Framework/Python.framework/Versions/3.3/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/Current/bin:/usr/bin:/bin : /usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin:/Users/oskarniburski/.rvm/bin

'which -a make'も、located -b '\make'も同様です。最初のコマンドで見つからないコマンドと後者の次のコマンドを見つけます。illegal option --b

ベストアンサー1

質問1:make

最初の問題はRubyをコンパイルする必要があることです。これは通常次のように行われます。makeaから設定を読みMakefile、コンパイラを呼び出します。 OSXにmakeインストールすると、予期した場所とは異なる場所Xcodeにツールがインストールされます。このディレクトリはデフォルトディレクトリではないため、シェルはこのディレクトリに実行可能ファイルを見つけることができません。/Developer/usr/bin/usr/bin$PATH

ユーザーに次の行を追加すると、この問題を解決できます~/.bash_profileexport $PATH行の前に追加する必要があります)。

PATH="/Developer/usr/bin:$PATH" 

sudoただし、たとえば、rootとして実行されるコマンドはまだアクセスできません。このディレクトリをデフォルトパスに追加することをお勧めします。を開き、/etc/profileパスを定義する行を見つけ、ここにディレクトリを追加します。私はLinuxを使用していますが、次のようになります。

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

次のようにそのディレクトリの末尾にディレクトリを追加します。

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/Developer/usr/bin"

デフォルト値を変更したくない場合は、makeデフォルト値のディレクトリに接続できます$PATH

 sudo ln -s /Developer/usr/bin/make /usr/bin

そこにあるすべての項目に対してこれを行う必要があるため、/Developer/usr/binデフォルト値を変更することをお勧めします。

Q2:新しいバージョンを探しています

この時点でRubyをインストールできるはずです。

$ sudo port install ruby19

正しく終了しますが、Rubyのバージョンが更新されていないようです。

$ ruby --version
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin10.0]

このため、基本的にportそのファイルをインストールし、Ruby/opt/local実行可能ファイルを/opt/local/bin/ruby1.9。あなたの道に。追加すると、v1.8とv1.9を実行できます。既存のスクリプトをすべてv1.9に切り替えるには、新しいバージョンを選択することをお勧めします。$PATH/opt/local/bin$PATHruby1.9/opt/local/bin$PATHrubyruby1.9/usr/bin/ruby

以前のバージョンは/usr/bin実際にシンボリックリンクです。

$ ls -l /usr/bin/ruby 
rwxr-xr-x 1 root wheel 76 25 Jun 2010 /usr/bin/ruby -> ../../System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby

つまり、安全に削除して新しいバージョンへのリンクに置き換えることができます。

$ sudo rm /usr/bin/ruby; sudo ln -s  /opt/local/bin/ruby1.9  /usr/bin/ruby

rubyv1.8をバックアップして実行するには、反対のコマンドを実行してください。

$ sudo rm /usr/bin/ruby; sudo ln -s  /System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby  /usr/bin/ruby

すべてが順調に進んだ場合、rubyデフォルトはv1.9です。

$ ruby --version
ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-darwin10]

おすすめ記事