Ruby DevKit не работает для RedCloth и других драгоценных камней в WindowsXP

Я совершенно новичок в RoR и не имею большого опыта веб-разработки. Обычно я сдаюсь, но мне нужна среда разработки RoR для работы, и я не могу выбрать мозг создателя сайта, потому что он кто-то за пределами компании и дал понять, что он совершенно не знаком с Windows (он разрабатывает на Mac, и я начинаю понимать, почему...). Это мой первый пост, так что будьте добры...

Цель: иметь возможность просматривать сайт на основе RoR на локальном компьютере, предпочтительно с использованием уже существующего XAMMP-сервера, но с использованием rails-сервера тоже будет хорошо.


Среда: Windows XP Xammp 1.7.3 Ruby 9.1.2 DevKit 4.5.0.

Что я пробовал: я начал с того, что следовал инструкциям в этом руководстве (Установите Xampp и Rails на Windows-машине http://www.grapethinking.com/getting-rails-to-work-on-a-windows-machine-running-xampp). Я успешно прошел все шаги и смог создать приложение rails и увидеть страницу "Добро пожаловать на борт".

Я получил локальную копию сайта от heroku ( http://heroku.com/), который они используют. Я изменил файл конфигурации apache так, чтобы он указывал на общую папку сайта, как описано в шаге 5 учебника по Xampp и Rails. В этот момент я получил следующее сообщение при переходе на localhost:3000

Access forbidden!

You don't have permission to access the requested directory. There is either no index document or the directory is read-protected.

If you think this is a server error, please contact the webmaster.
Error 403
localhost
11/4/2010 2:19:12 PM
Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1

Я не был уверен, как изменить разрешения на машине с Windows или это была даже проблема. Я попытался запустить "rails s", который жаловался:

Could not find RedCloth-4.2.3 in any of the sources, Try running 'bundle install'.

Поэтому я нашел этот пост, в котором описана моя ситуация ( http://www.ruby-forum.com/topic/204455), которая привела меня к загрузке DevKit. На этом этапе я удалил ruby ​​и переустановил его с правильным установщиком. Я установил devkit, следуя инструкциям на их сайте ( https://github.com/oneclick/rubyinstaller/wiki/Development-Kit).

DevKit не работает. Файл config.yml автоматически находился в том месте, где я установил ruby ​​(в....xampp/ruby ​​/Ruby192), и он работал без жалоб, за исключением шага 5, где вы проверяете, действительно ли он работает с командой "gem install rdiscount --platform=ruby ​​", которая вызвала следующую ошибку:

C:\RubyDevKit>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:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/XAMPP_Install
/xampp/ruby/Ruby192/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:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010
/XAMPP_Install/xampp/ruby/Ruby192/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:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/XAMPP_Install/
xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:368:in `try_do': The complier failed t
o generate an executable file. (RuntimeError)
You have to install development tools first.
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:435:in `try_link0'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:440:in `try_link'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:552:in `try_func'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:797:in `block in have_fun
c'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:693:in `block in checking
_for'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:280:in `block (2 levels)
in postpone'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:254:in `open'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:280:in `block in postpone
'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:254:in `open'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:276:in `postpone'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:692:in `checking_for'
        from C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2010/X
AMPP_Install/xampp/ruby/Ruby192/lib/ruby/1.9.1/mkmf.rb:796:in `have_func'
        from extconf.rb:5:in `<main>'


Gem files will remain installed in C:/Documents and Settings/Lyla/My Documents/n
ew/XAMPP_Server_2010/XAMPP_Install/xampp/ruby/Ruby192/lib/ruby/gems/1.9.1/gems/r
discount-1.6.5 for inspection.
Results logged to C:/Documents and Settings/Lyla/My Documents/new/XAMPP_Server_2
010/XAMPP_Install/xampp/ruby/Ruby192/lib/ruby/gems/1.9.1/gems/rdiscount-1.6.5/ex
t/gem_make.out

Так что у него есть "Временное улучшение PATH для включения DevKit...", но больше ничего не работает. Аналогичная ошибка возникает при попытке установить RedCloth.

Я нашел этот пост, который кажется очень связанным, но он предназначен для того, чтобы заставить работать гем dbd-odbc, что бы это ни было, и решение кажется несколько специфичным для этого: я не могу заставить работать комплект разработки ruby ​​для Windows XP

Я не был уверен, о чем он говорил с изменением файла fstab... может, это мне поможет? К сожалению, я не могу найти файл fstab, у меня нет папки msys в моей корневой папке devkit. Я не могу найти gcc.bat, make.bat или sh.bat в папке bin моей установки ruby ​​или в различных папках bin в devkit.

Есть также этот пост ( http://www.ruby-forum.com/topic/186191), в котором предлагаются некоторые вещи, за которыми я не могу следовать... это также все с 2009 года, поэтому я подумал, что это может быть старым.

помогите и спасибо!

2 ответа

Решение

Честно говоря, я бы не стал настраивать его в Windows. Это может быть совершенно неуправляемым и порой разочаровывающим (я знаю это по опыту). Существует причина, по которой существует очень небольшое сообщество разработчиков Rails, использующих Windows. Большинство остальных используют OS X или разновидность Linux.

Создайте виртуальную машину Ubuntu с чем-то вроде VirtualBox (бесплатно) и настройте там стек Rails. Это гораздо более безболезненная среда, и вы не будете оглядываться назад. В качестве альтернативы, если вы не хотите выполнять всю настройку самостоятельно, используйте BitNami RubyStack. Это предварительно сконфигурированная среда Ruby/Rails, которую вы можете использовать как виртуальную машину или установить на свой компьютер (я бы выбрал первое).

Надеюсь, это поможет!

Here's what I did for anyone who might be interested:

Platform: Windows 7 Rails 4 Ruby 1.9.2p0

  1. Installed Ruby via rubyinstaller.org
  2. Downloaded DevKit
  3. From the Ruby enhanced CMD prompt, "ruby dk.rb init", followed by "ruby dk.rb install"
  4. Загрузил файлы DLL SQLLite отсюда: sqlite.org, скопировал их в каталог C:\Windows
  5. В расширенной командной строке Ruby "Gem install RedCloth"
  6. Добавлен "Gem RedCloth" в gemfile
  7. "комплектация"

Эти шаги сработали для меня! Я не понимаю, почему людям так тяжело с Ruby на Windows. Это все, над чем я работаю, и все работает отлично.

Другие вопросы по тегам