3

2010 年 6 月 25 日更新

Googleを使用して、この問題に遭遇したのは私だけではありません。どうやらこの問題はreadlineに関係しているようです。誰かがこの問題に遭遇しましたか? (以下のmake.error.logのエラーを参照してください)Googleが示唆するように、readlineをコンパイルしました:

curl -O ftp://ftp.gnu.org/gnu/readline/readline-6.1.tar.gz
tar xzvf readline-6.1.tar.gz
cd readline-6.1
./configure --prefix=/usr/local
make
sudo make install

アップデートⅡ

上記の更新 (readline をコンパイル) のアドバイスに従って、libxml2 に関連する新しい問題が発生しました。詳しくは、こちらを参照してください。このコマンドを実行しました:sudo port install libxml2


アップデート III 2010 年 6 月 26 日

readline をコンパイルし、Readline のRVM ドキュメントに記載されている手順に従っていると、新しいエラーが発生しました (rvm install 1.8.7 および rvm install 1.9.1 でこのエラーが発生します)。

このコマンド:rvm install 1.9.1 -C --with-readline-dir=$HOME/.rvm/usr 結果は次のようになります:

main.c: In function ‘objcdummyfunction’:
main.c:19: warning: implicit declaration of function ‘objc_msgSend’
main.c: At top level:
main.c:19: warning: ‘objcdummyfunction’ defined but not used
eval.c: In function ‘ruby_cleanup’:
eval.c:139: warning: passing argument 1 of ‘ruby_init_stack’ discards qualifiers from pointer target type
gc.c: In function ‘garbage_collect_with_gvl’:
gc.c:597: warning: cast from pointer to integer of different size
w: illegal option -- L
usage: w [hi] [user ...]
make: [libruby.1.9.1.dylib] Error 1 (ignored)
ld: in /usr/local/lib/libsqlite3.dylib, file was built for i386 which is not the architecture being linked (x86_64)
collect2: ld returned 1 exit status
make[1]: *** [../../.ext/i386-darwin10.4.0/tcltklib.bundle] Error 1
make: *** [mkmain.sh] Error 1

解決!!!!アップデート IV 2010 年 6 月 27 日

3つのことを行うことでrvmを機能させることができました。ここで同様の問題を参照してください。

  1. usr/local/lib/ に移動しました
  2. sudo rm -rf libsqlite3.dylib (これは本当に悪いことかもしれませんが、この問題を解決するのに役立ちました)
  3. x86_64/i386ユニバーサルライブラリを構築するために、 sqlite3sudo port upgrade --force sqlite3 +universalとそのすべての依存関係を取得しました

すべての緑: .

justinz$ rvm remove 1.9.1

info: Removing /Users/justinz/.rvm/src/ruby-1.9.1-p378...

info: it seems that /Users/justinz/.rvm/rubies/ruby-1.9.1-p378 is already non existent.

info: Removing ruby-1.9.1-p378 aliases...

info: Removing ruby-1.9.1-p378 wrappers...

info: Removing ruby-1.9.1-p378 environments...

info: Removing ruby-1.9.1-p378 binaries...
justin-zollarss-mac-pro:ruby-1.9.1-p378 justinz$ rvm install 1.9.1 -C --with-readline-dir=$HOME/.rvm/usr

info: Installing Ruby from source to: /Users/justinz/.rvm/rubies/ruby-1.9.1-p378

info: Extracting ruby-1.9.1-p378 ...

info: Configuring ruby-1.9.1-p378, this may take a while depending on your cpu(s)...

info: Compiling ruby-1.9.1-p378, this may take a while, depending on your cpu(s)...

info: Installing ruby-1.9.1-p378

info: Installation of ruby-1.9.1-p378 is complete.

info: Updating rubygems for /Users/justinz/.rvm/gems/ruby-1.9.1-p378

info: adjusting shebangs for ruby-1.9.1-p378 (gem irb erb ri rdoc testrb rake).

info: Importing initial gems...
justin-zollarss-mac-pro:ruby-1.9.1-p378 justinz$ rvm list

rvm rubies

   ruby-1.8.6-p399 [ x86_64 ]
   ruby-1.8.7-p299 [ x86_64 ]
   ruby-1.9.1-p378 [ x86_64 ]

justin-zollarss-mac-pro:ruby-1.9.1-p378 justinz$ 

RVMを適切にセットアップする際に問題が発生しています。RVMの使用に非常に興味がありますが、新しいバージョンの ruby​​ をインストールしようとすると中止されます。私の Bashrc または Profile ファイルに何か問題がありますか?

よろしくお願いします!

バッシュターミナル

justin-zollarss-mac-pro:~ justinz$ rvm install 1.9.1

Installing Ruby from source to: /Users/justinz/.rvm/rubies/ruby-1.9.1-p378

/Users/justinz/.rvm/src/ruby-1.9.1-p378 has already been extracted.

Configuring ruby-1.9.1-p378, this may take a while depending on your cpu(s)...

Compiling ruby-1.9.1-p378, this may take a while, depending on your cpu(s)...

Error running 'make ', please check /Users/justinz/.rvm/log/ruby-1.9.1-p378/make*.log

There has been an error while running make. Aborting the installation.

Bashrc

# System-wide .bashrc file for interactive bash(1) shells.
if [ -z "$PS1" ]; then
   return
fi
PS1='\h:\W \u\$ '
# Make bash check its window size after a process completes
shopt -s checkwinsize
if [[ -s /Users/justinz/.rvm/scripts/rvm ]] ; then source /Users/justinz/.rvm/scripts/rvm ; fi

make.error.log

[2010-05-25 23:14:45] make 
readline.c: In function ‘username_completion_proc_call’:
readline.c:1159: error: ‘username_completion_function’ undeclared (first use in this function)
readline.c:1159: error: (Each undeclared identifier is reported only once
readline.c:1159: error: for each function it appears in.)
make[1]: *** [readline.o] Error 1
make: *** [mkmain.sh] Error 1

プロフィール

# System-wide .profile for sh(1)

if [ -x /usr/libexec/path_helper ]; then
 eval `/usr/libexec/path_helper -s`
fi

if [ "${BASH-no}" != "no" ]; then
 [ -r /etc/bashrc ] && . /etc/bashrc
fi
if [[ -s /Users/justinz/.rvm/scripts/rvm ]] ; then source /Users/justinz/.rvm/scripts/rvm ; fi
4

3 に答える 3

2

この投稿によると、最初にreadlineをインストールする必要があります。

rvm package install readline
于 2010-07-23T20:45:43.227 に答える
0

解決!!!! 次の 3 つのことを行うことで、rvm を機能させることができました。

  1. 案内するusr/local/lib/
  2. sudo rm -rf libsqlite3.dylib(これは本当に悪いことかもしれませんが、この問題を解決するのに役立ちました)
  3. sudo port upgrade --force sqlite3 +universalx86_64/i386ユニバーサルライブラリを構築するために、sqlite3とそのすべての依存関係を取得しました
于 2010-06-28T05:11:36.160 に答える
0

これを試してください: 最初に (!) 1.8.7 をインストールして使用してください。

$ rvm インストール 1.8.7

$ rvm 使用 1.8.7

その後、1.9.1 を再度インストールしてみてください。

于 2010-06-18T20:01:09.267 に答える