Проблемы с установкой Ruby, Rails и DevKit на Windows 7 x64 — требуется исправление

У меня возникает ряд проблем при попытке установить ruby ​​и rails. Я пробовал и без, и теперь после очистки предыдущих установленных версий.

При попытке запустить «gem install rdiscount --platform=ruby» я получаю следующую ошибку:

C:\Windows\system32>gem install rdiscount --platform=ruby
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing rdiscount:
    ERROR: Failed to build gem native extension.

    "C:/Program Files (x86)/ruby-1.9.3/bin/ruby.exe" extconf.rb
checking for random()... *** 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:/Program Files (x86)/ruby-1.9.3/bin/ruby
    --with-rdiscount-dir
    --without-rdiscount-dir
    --with-rdiscount-include
    --without-rdiscount-include=${rdiscount-dir}/include
    --with-rdiscount-lib
    --without-rdiscount-lib=${rdiscount-dir}/lib
C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:368:in `try_do': The complier failed to generate an executable file. (RuntimeError)
You have to install development tools first.
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:435:in `try_link0'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:440:in `try_link'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:552:in `try_func'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:797:in `block in have_func'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:693:in `block in checking_for'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:280:in `block (2 levels) in postpone'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:254:in `open'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:280:in `block in postpone'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:254:in `open'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:276:in `postpone'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:692:in `checking_for'
    from C:/Program Files (x86)/ruby-1.9.3/lib/ruby/1.9.1/mkmf.rb:796:in `have_func'
    from extconf.rb:5:in `<main>'


Gem files will remain installed in C:/Program Files (x86)/ruby-1.9.3/lib/ruby/gems/1.9.1/gems/rdiscount-1.6.8 for inspection.
Results logged to C:/Program Files (x86)/ruby-1.9.3/lib/ruby/gems/1.9.1/gems/rdiscount-1.6.8/ext/gem_make.out

Я запустил установку DevKit, как указано, и, похоже, она работает. Rails раньше работал, а теперь нет. У кого-нибудь есть предложения о том, как заставить это работать? Или это случай удаления и повторной попытки?

Спасибо

Павел


person pbattisson    schedule 19.07.2012    source источник


Ответы (2)


Кажется, вы установили Ruby (вместе с DevKit?) в каталог с пробелами.

Как указано в собственном установщике Ruby, путь с пробелами не рекомендуется (поэтому по умолчанию C:\Ruby193

GCC, компилятор, входящий в состав DevKit, имеет проблемы с путями с пробелами, поэтому установку DevKit также рекомендуется размещать в пути без пробелов (например, C:\DevKit)

Все это упоминается как в RubyInstaller, так и на странице инструкций по установке DevKit.

person Luis Lavena    schedule 19.07.2012
comment
Спасибо за помощь, кажется, у меня была установлена ​​старая версия в области Program Files, которая все испортила. - person pbattisson; 19.07.2012
comment
...Могли бы вы подумать, что дефис в имени каталога вызовет подобную ошибку? например 'C:\Ruby200-x64' - person J Smith; 04.06.2014
comment
@JSmith не уверен, что вы имеете в виду, но пробел - это не то же самое, что дефис (первый вызывает сообщение о проблеме, а другой работает). - person Luis Lavena; 31.08.2014
comment
У меня был установлен RDK, но по каким-то причинам переменные окружения не читались. запуск <path-to-ruby>\devkitvars.ps1 загрузил их и все заработало. (не связанная с GH проблема упоминает, что эта ошибка обычно связана с gcc, например, она не Это заставило меня проверить, присутствует ли gcc и его можно найти.) [Дополнение: мой путь также содержал тире, как у J Smith.] - person Cornelius; 22.01.2018

Я бы рекомендовал удалить и установить заново. Также я рекомендую использовать установщик Rails с http://railsinstaller.org/. бесплатный способ установить рельсы и рубин на машину с Windows.

person Egryan    schedule 19.07.2012