Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Ruby: Общие вопросы > Ruby и fcgi


Автор: Koteg 8.8.2012, 11:22
Доброго времени суток всем.
Суть вопроса: установлен gem fcgi, но интерпретатор ругается на конструкцию require 'fcgi'.
Система и ПО:
Код


# uname -a
Linux dev.resolute.ru 3.3.3 #1 SMP Tue Apr 24 23:40:06 MSK 2012 x86_64 x86_64 x86_64 GNU/Linux

# ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

# rails -v
Rails 3.2.6

# gem list

*** LOCAL GEMS ***

actionmailer (3.2.7, 3.2.6)
actionpack (3.2.7, 3.2.6)
activemodel (3.2.7, 3.2.6)
activerecord (3.2.7, 3.2.6)
activeresource (3.2.7, 3.2.6)
activesupport (3.2.7, 3.2.6)
arel (3.0.2)
builder (3.0.0)
bundler (1.1.5)
coderay (1.0.7)
erubis (2.7.0)
fastercsv (1.5.5)
fcgi (0.8.8)
hike (1.2.1)
i18n (0.6.0)
journey (1.0.4)
json (1.7.4)
mail (2.4.4)
metaclass (0.0.1)
mime-types (1.19)
mocha (0.12.3)
multi_json (1.3.6)
mysql (2.8.1)
mysql2 (0.3.11)
net-ldap (0.3.1)
pg (0.14.0)
polyglot (0.3.3)
prototype-rails (3.2.1)
rack (1.4.1)
rack-cache (1.2)
rack-openid (1.3.1)
rack-ssl (1.3.2)
rack-test (0.6.1)
rails (3.2.7, 3.2.6)
railties (3.2.7, 3.2.6)
rake (0.9.2.2)
rdoc (3.12)
rmagick (2.13.1)
ruby-openid (2.2.0, 2.1.8, 2.1.4)
shoulda (3.1.1, 2.11.0)
shoulda-context (1.0.0)
shoulda-matchers (1.2.0)
sprockets (2.1.3)
sqlite3 (1.3.6)
thor (0.15.4)
tilt (1.3.3)
treetop (1.4.10)
tzinfo (0.3.33)
yard (0.8.2.1)

Gem fcgi (содержимое):
# ls -la /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.8/lib/
total 68
drwxr-xr-x 2 root root  4096 Aug  7 23:30 .
drwxr-xr-x 5 root root  4096 Aug  7 23:30 ..
-rw-r--r-- 1 root root 14004 Aug  7 23:30 fcgi.rb
-rwxr-xr-x 1 root root 41323 Aug  7 23:30 fcgi.so

# echo $GEM_PATH
/usr/lib/ruby/gems/1.8/gems/


Проблема:

создан файл test.fcgi:

Код

#!/usr/bin/ruby

require File.dirname(__FILE__) + '/../config/boot'
require File.dirname(__FILE__) + '/../config/environment'
require 'fcgi'


ошибка при запуске:

Код

# ./test.fcgi
/usr/lib/ruby/gems/1.8/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:252:in `require': no such file to load -- fcgi (LoadError)
        from /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:252:in `require'
        from /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:236:in `load_dependency'
        from /usr/lib/ruby/gems/1.8/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:252:in `require'
        from ./test.fcgi:5


Переустановка gem fcgi ничего не дала.
Может версии джемов должны каким-то образом соответствовать друг другу?

Автор: Koteg 23.8.2012, 12:53
Решается всё так: в Gemfile вписывается строка 
gem "fcgi"
затем выполняется:
#bundle install --without development test

Перед этим надо поставить сам fcgi.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)