3

我一直在尝试在 OSX Lion 上安装 Ruby 1.9.3,但一直遇到 make 错误

Kerrie-Yees-MacBook-Pro:~ kerrieyee$ rvm install 1.9.3 从源代码安装 Ruby 到:/Users/kerrieyee/.rvm/rubies/ruby-1.9.3-p194,这可能需要一段时间,具体取决于您的 CPU( s)...

ruby-1.9.3-p194 - #fetching

ruby-1.9.3-p194 - #extracted to /Users/kerrieyee/.rvm/src/ruby-1.9.3-p194(已经提取)

ruby-1.9.3-p194 - #configuring

ruby-1.9.3-p194 - #编译

运行'make'时出错,请阅读/Users/kerrieyee/.rvm/log/ruby-1.9.3-p194/make.log 运行make时出错。停止安装。

我已经使用命令行工具安装了 git 1.7.7.5、osx-gcc4.2、homebrew 0.9 和 XCode 4.3。我已经尝试安装 readline 但仍然出现 make 错误。我对 ruby​​ 也很陌生,对终端了解不多,所以如果需要更多信息,请同时编写获取信息所需的终端命令。谢谢!

根据建议,我打开了 make.log 文件

看起来像错误部分的部分读取

readline.c: In function ‘username_completion_proc_call’: readline.c:1499: error: ‘username_completion_function’ undeclared (first use in this function) readline.c:1499: error: (Each undeclared identifier is reported only once readline.c:1499: error: for each function it appears in.) make[2]: *** [readline.o] Error 1 make[1]: *** [ext/readline/all] Error 2 make: *** [build-ext] Error 2

注意到错误与 readline 有关,我查找了有关 readline 的其他问题并遵循 RVM 说明。

我输入rvm pkg install readlinervm reinstall 1.9.3 --with-readline-dir=$rvm_path/usr

仍然存在错误:

Error running 'make ', please read /Users/kerrieyee/.rvm/log/ruby-1.9.3-p194/make.log There has been an error while running make. Halting the installation.

make.log 文件内容如下:

ld: in /usr/local/lib/libxml2.2.dylib, file was built for unsupported file format which is not the architecture being linked (x86_64) for architecture x86_64 collect2: ld returned 1 exit status make[2]: *** [../../.ext/x86_64-darwin11.4.0/tcltklib.bundle] Error 1 make[1]: *** [ext/tk/all] Error 2 make: *** [build-ext] Error 2

我还跑了 brew doctor:

Kerrie-Yees-MacBook-Pro:~ kerrieyee$ brew doctor

错误:在 /usr/local/lib 中找到未编译的 dylib。如果您不是故意将它们放在那里,它们可能会在构建 Homebrew 公式时引起问题,并且可能需要删除。

意外的dylib:/usr/local/lib/libexslt.0.dylib /usr/local/lib/libexslt.dylib /usr/local/lib/libhistory.6.0.dylib /usr/local/lib/libhistory.6.dylib / usr/local/lib/libhistory.dylib /usr/local/lib/libreadline.6.0.dylib /usr/local/lib/libreadline.6.dylib /usr/local/lib/libreadline.dylib /usr/local/lib/ libruby.1.8.7.dylib /usr/local/lib/libruby.1.8.dylib /usr/local/lib/libruby.dylib /usr/local/lib/libsqlite3.0.8.6.dylib /usr/local/lib/ libsqlite3.0.dylib /usr/local/lib/libsqlite3.dylib /usr/local/lib/libxml2.2.dylib /usr/local/lib/libxml2.dylib /usr/local/lib/libxslt.1.dylib / usr/local/lib/libxslt.dylib

错误:在 /usr/local/lib 中找到未酿造的 .la 文件。如果您不是故意将它们放在那里,它们可能会在构建 Homebrew 公式时引起问题,并且可能需要删除。

意外的 .la 文件:/usr/local/lib/libexslt.la /usr/local/lib/libsqlite3.la /usr/local/lib/libxml2.la /usr/local/lib/libxslt.la

错误:在 /usr/local/lib/pkgconfig 中找到未编译的 .pc 文件。如果您不是故意将它们放在那里,它们可能会在构建 Homebrew 公式时引起问题,并且可能需要删除。

意外的 .pc 文件:/usr/local/lib/pkgconfig/libexslt.pc /usr/local/lib/pkgconfig/libxml-2.0.pc /usr/local/lib/pkgconfig/libxslt.pc /usr/local/lib/ pkgconfig/sqlite3.pc

错误:在 /usr/local/lib 中找到未编译的静态库。如果您不是故意将它们放在那里,它们可能会在构建 Homebrew 公式时引起问题,并且可能需要删除。

意外的静态库:/usr/local/lib/libexslt.a /usr/local/lib/libhistory.a /usr/local/lib/libreadline.a /usr/local/lib/libruby-static.a /usr/local /lib/libsqlite3.a /usr/local/lib/libxml2.a /usr/local/lib/libxslt.a

4

2 回答 2

1

我遇到了同样的问题,我通过运行以下命令解决了这个问题:

酿造更新

brew tap homebrew/dupes

酿造安装苹果-gcc42

curl -L https://get.rvm.io | bash -s 稳定 --ruby

于 2013-02-22T15:41:57.573 回答
0

我不能肯定这会解决你的具体问题,但我写的这个教程帮助了很多人: http: //moncefbelyamani.com/how-to-install-xcode-homebrew-git-rvm-ruby -在-mac/

于 2012-06-14T02:59:56.800 回答