2

我正在尝试在我的计算机上安装 rails 2.0.0。我已经在我的电脑上安装了 ruby​​,运行

ruby -v 

命令返回

ruby 2.0.0p247 (2013-06-27) [x64-mingw32]

现在,我正在尝试通过运行安装 rails 2.0.0

gem install rails 

但是,我遇到了一个错误:

    C:/Ruby200-x64/bin/ruby.exe extconf.rb
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=C:/Ruby200-x64/bin/ruby
    --with-atomic_reference-dir
    --without-atomic_reference-dir
    --with-atomic_reference-include
    --without-atomic_reference-include=${atomic_reference-dir}/include
    --with-atomic_reference-lib
    --without-atomic_reference-lib=${atomic_reference-dir}/
C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:430:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
    from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:515:in `try_link0'
    from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:813:in `try_run'
    from extconf.rb:24:in `<main>'

第 4 行说我需要安装开发工具,所以我从http://rubyinstaller.org/downloads/为我的 64 位 Windows 下载了开发工具包,并运行以下命令没有问题:

ruby dk.rb init
ruby dk.rb install

但是,运行 gem rails install 后我仍然遇到同样的错误......我安装了错误的开发工具还是什么?我不确定出了什么问题

此外,如果该信息相关,我正在使用 pik 来控制我的 ruby​​ 版本。

注意:我检查了另一个可能的解决方案,它说我的用户文件夹中有空格,导致安装出错,但我的用户帐户中没有空格,所以没有帮助。

*编辑:包含更多信息的 mkmf 文件:

"x86_64-w64-mingw32-gcc -o conftest.exe -IC:/Ruby200-x64/include/ruby-2.0.0/x64-mingw32 -IC:/Ruby200-x64/include/ruby-2.0.0/ruby/backward -IC:/Ruby200-x64/include/ruby-2.0.0 -I. -DFD_SETSIZE=2048 -D_WIN32_WINNT=0x0501 -D_FILE_OFFSET_BITS=64   -O3 -fno-omit-frame-pointer -fno-fast-math -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -march=native conftest.c  -L. -LC:/Ruby200-x64/lib -L.      -lx64-msvcrt-ruby200  -lshell32 -lws2_32 -limagehlp -lshlwapi  "
checked program was:
/* begin */
1: #include "ruby.h"
2: 
3: #include <winsock2.h>
4: #include <windows.h>
5: int main(int argc, char **argv)
6: {
7:   return 0;
8: }
/* end */
4

0 回答 0