Not find RubyGem :-(


#1

Buenas

Verán estaba con una app con rails 2.0.2, mongrel y lighttpd
funcionando relativamente bien pero me decidi a poner passenger y
zas!!! ya no funciona nada :frowning:

La instalación de passenger y su configuración creo haberlas realizado
correctamente pero cuando lanzo la app passenger me indica el error
“Could not find RubyGem rails (=2.0.2)”

Exception Class
Gem:LoadError

Es raro por que la 2.0.2 es la version que hay en el server, de todas
formas congelo la versión de rails en vendor y el error que me lanza
esta vez es
“Could nor find RubyGem activesupport (>=0)”

Exception Class
Gem:LoadError

He probado a borrar todo lo que tenga que ver con rails del server e
instalarlo nuevamente con
gem install rails -v=2.0.2 --no-ri --no-rdoc
pero nada el error persiste.

Lo que si puedo es ejecutar un script/console production y ver que
funciona correctamente la app.

Alguna idea?

Muchas gracias por la ayuda.
Un saludo.


#2

2009/5/19 alarkspur removed_email_address@domain.invalid:

Verán estaba con una app con rails 2.0.2, mongrel y lighttpd
funcionando relativamente bien pero me decidi a poner passenger y
zas!!! ya no funciona nada :frowning:

Posiblemente el interprete de passenger y el interprete en linea de
comandos no sean el mismo. En particular el comando gem que ejecutas
en linea de comandos, si estoy en lo cierto, no instalaria las gemas
en el arbol del otro interprete.


#3

Gracias por la info, aunque sigo sin dar con la solución. He mirado la
configuración y rutas como indicas y tengo que
which gem # => /usr/bin/gem

y todas las gemas se instalan en
/usr/lib64/ruby/gems/1.8/gems

y en el fichero config/environment.rb le indico donde están las gemas
ENV[“GEM_PATH”]="/usr/lib64/ruby/gems/1.8"

Voy a mirar la docu de passenger a ver si se le puede indicar algo.
Cualquier ayuda es bienvenida que ya ando desesperadoooo.
Muchas gracias.


#4

Estás usando Ruby Enterprise Edition con passenger?


Miguel Ángel Martínez
Triviño http://martineztrivino.es
GPG ID: 0x5F15D017


#5

Actualiza rubygems

sudo gem update --system

2009/5/19 alarkspur removed_email_address@domain.invalid:

removed_email_address@domain.invalid
http://lists.simplelogica.net/mailman/listinfo/ror-es


#6

Estás usando Ruby Enterprise Edition con passenger?

No, instale passenger usando gem. incluso desconocía la existencia de
REE voy a investigar por ahi a ver si puede ser una posible solución.
Gracias.


#7

He probado con REE pero el problema persiste y sige indicando lo mismo,
y tengo actualizado rubygems

gem update --system
Updating RubyGems
Nothing to update

en http.conf las rutas estan correctas
LoadModule passenger_module
/usr/lib64/ruby/gems/1.8/gems/passenger-2.2.2/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib64/ruby/gems/1.8/gems/passenger-2.2.2
PassengerRuby /usr/bin/ruby

El tema es que tampoco genera logs que poder mirar que ocurre salvo los
que muestra passenger en el trace
0 /usr/lib/ruby/site_ruby/1.8/rubygems.rb 826 in
report_activate_error' 1 /usr/lib/ruby/site_ruby/1.8/rubygems.rb 260 inactivate’
2 /usr/lib/ruby/site_ruby/1.8/rubygems.rb 67 in gem' 3 ./config/boot.rb 20 4 /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb 31 ingem_original_require’
5 /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb 31 in
require' 6 ./config/environment.rb 15 7 /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb 31 ingem_original_require’
8 /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb 31 in
`require’

Me va a dar que puede ser del boot.rb, os le pego a ver si se ve algo
raro

unless defined?(RAILS_ROOT)
root_path = File.join(File.dirname(FILE), ‘…’)

unless RUBY_PLATFORM =~ /mswin32/
require ‘pathname’
root_path = Pathname.new(root_path).cleanpath(true).to_s
end

RAILS_ROOT = root_path
end

unless defined?(Rails::Initializer)
if File.directory?("#{RAILS_ROOT}/vendor/rails")
require “#{RAILS_ROOT}/vendor/rails/railties/lib/initializer”
else
require ‘rubygems’

gem 'rails', '2.0.2'
gem 'activerecord', '2.0.2'
gem 'gettext', '1.90.0'
gem 'actionpack', '2.0.2'
gem 'activesupport', '2.0.2'
gem 'rmagick', '2.5.2'

environment_without_comments = IO.readlines(File.dirname(__FILE__) +

‘/environment.rb’).reject { |l| l =~ /^#/ }.join
environment_without_comments =~ /[^#]RAILS_GEM_VERSION = ‘([\d.]+)’/
rails_gem_version = $1

if version = defined?(RAILS_GEM_VERSION) ? RAILS_GEM_VERSION :

rails_gem_version
rails_gem = Gem.cache.search(‘rails’, “=#{version}”).first

  if rails_gem
    #require "rails", "=#{version}"
    require rails_gem.full_gem_path + '/lib/initializer'
  else
    STDERR.puts %(Cannot find gem for Rails =#{version}:
Install the missing gem with 'gem install -v=#{version} rails', or
change environment.rb to define RAILS_GEM_VERSION with your desired

version.
)
exit 1
end
else
require “rails”
require ‘initializer’
end
end

Rails::Initializer.run(:set_load_path)
end