Diferencia entre revisiones de «Instalar Ruby RoR»

De BandaAncha.EU
Saltar a: navegación, buscar
(RubyGems)
(Ruby)
 
(No se muestran 5 ediciones intermedias del mismo usuario)
Línea 6: Línea 6:
 
  tar -zxvf ruby-1.9.2-p180.tar.gz
 
  tar -zxvf ruby-1.9.2-p180.tar.gz
 
  cd ruby-1.9.2-p180
 
  cd ruby-1.9.2-p180
  ./configure --prefix=/usr/local/ruby-1.9.2 --with-static-linked-ext
+
  ./configure --prefix=/usr/local/ruby --with-static-linked-ext
 
  vi ext/Setup # puedo descomentar (no lo hago) los modulos que quiero enlazar estaticamente
 
  vi ext/Setup # puedo descomentar (no lo hago) los modulos que quiero enlazar estaticamente
 
  make
 
  make
 
  make test
 
  make test
 
  make install
 
  make install
 +
 +
Añadir Ruby al PATH del sistema
 +
 +
vi /etc/profile
 +
 +
Añado tanto /usr/local/ruby/bin como /usr/local/ruby/lib/ruby/gems/1.9.1/bin
 +
 +
== Passenger ==
 +
 +
gem install passenger --no-rdoc --no-ri
 +
passenger-install-apache2-module
 +
 +
Añado la configuración a http.conf
 +
 +
LoadModule passenger_module /usr/local/ruby/lib/ruby/gems/1.9.1/gems/passenger-3.0.7/ext/apache2/mod_passenger.so
 +
PassengerRoot /usr/local/ruby/lib/ruby/gems/1.9.1/gems/passenger-3.0.7
 +
PassengerRuby /usr/local/ruby/bin/ruby
 +
PassengerMaxPoolSize 10
 +
        # 6, Maximum number of Ruby on Rails or Rack application instances that may be simultaneously active
 +
PassengerMaxRequests 5000
 +
        # 0, After serving that many requests, the application instance will be shut down
 +
 +
El estado de Passenger puede verse con
 +
 +
passenger-status
 +
passenger-memory-stats
  
 
== fcgi ==
 
== fcgi ==
Línea 28: Línea 54:
 
== Rails ==
 
== Rails ==
  
  gem install rails --no-rdoc --no-ri
+
Dentro del directorio de la aplicacion
 +
 
 +
  gem install bundler --no-rdoc --no-ri
 +
bundle config build.mysql2 --with-mysql-config=/usr/local/mysql/bin/mysql_config
 +
bundle
 +
 
 +
Me ha tocado desinstalar rake 0.9.2 y sustituirlo por rake 0.8.7, para evitar el error "uninitialized constant Rake::DSL"
 +
 
 +
gem install rake --version 0.8.7 --no-rdoc --no-ri
  
 
== RMagick ==
 
== RMagick ==

Revisión actual del 02:45 7 jun 2011

Ruby[editar]

Asegurarse que está instalado zlib-dev y openssl-dev

wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p180.tar.gz
tar -zxvf ruby-1.9.2-p180.tar.gz
cd ruby-1.9.2-p180
./configure --prefix=/usr/local/ruby --with-static-linked-ext
vi ext/Setup # puedo descomentar (no lo hago) los modulos que quiero enlazar estaticamente
make
make test
make install

Añadir Ruby al PATH del sistema

vi /etc/profile

Añado tanto /usr/local/ruby/bin como /usr/local/ruby/lib/ruby/gems/1.9.1/bin

Passenger[editar]

gem install passenger --no-rdoc --no-ri
passenger-install-apache2-module

Añado la configuración a http.conf

LoadModule passenger_module /usr/local/ruby/lib/ruby/gems/1.9.1/gems/passenger-3.0.7/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/ruby/lib/ruby/gems/1.9.1/gems/passenger-3.0.7
PassengerRuby /usr/local/ruby/bin/ruby
PassengerMaxPoolSize 10
        # 6, Maximum number of Ruby on Rails or Rack application instances that may be simultaneously active
PassengerMaxRequests 5000
        # 0, After serving that many requests, the application instance will be shut down

El estado de Passenger puede verse con

passenger-status
passenger-memory-stats

fcgi[editar]

wget http://www.fastcgi.com/dist/fcgi-2.4.0.tar.gz
tar -zxvf fcgi-2.4.0.tar.gz
cd fcgi-2.4.0
./configure --prefix=/usr/local/fcgi
make
make install
gem install fcgi --no-rdoc --no-ri -- --with-fcgi-dir=/usr/local/fcgi

Mysql bindings[editar]

gem install mysql --no-rdoc --no-ri -- --with-mysql-dir=/usr/local/mysql

Rails[editar]

Dentro del directorio de la aplicacion

gem install bundler --no-rdoc --no-ri
bundle config build.mysql2 --with-mysql-config=/usr/local/mysql/bin/mysql_config
bundle

Me ha tocado desinstalar rake 0.9.2 y sustituirlo por rake 0.8.7, para evitar el error "uninitialized constant Rake::DSL"

gem install rake --version 0.8.7 --no-rdoc --no-ri

RMagick[editar]

wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
tar -zxvf ImageMagick.tar.gz
cd ImageMagick-6.4.2
# http://www.imagemagick.org/script/advanced-unix-installation.php
./configure --prefix=/usr/local/imagemagick
make
make install

Al haber instalado ImageMagick en una ubicación no convencional, RMagick no encuentra libMagickCore.so.1, así que hay que grabar en en la libreria RMagick2.so, el directorio donde reside libMagickCore.so.1

gem install rmagick --no-rdoc --no-ri # me ha tocado añadir /usr/local/imagemagick/bin al PATH en /etc/profile
cd /usr/local/ruby/lib/ruby/gems/1.8/gems/rmagick-2.13.1/ext/RMagick/
ruby extconf.rb
make
# copio la última linea escupida por el make y modifico el -R para añadir :/usr/local/imagemagick/lib y la ejecuto
gcc -shared -o RMagick2.so rmdraw.o rminfo.o rmmontage.o rmfill.o rmimage.o rmstruct.o rmilist.o rmmain.o rmagick.o rmenum.o rmutil.o rmpixel.o -L. -L/usr/local/ruby/lib -Wl,-R/usr/local/ruby/lib:/usr/local/imagemagick/lib -L/usr/local/imagemagick/lib    -L/usr/local/imagemagick/lib -lMagickCore -llcms -ltiff -lfreetype -ljpeg -lpng -lfontconfig -lXext -lXt -lSM -lICE -lX11 -lbz2 -lxml2 -lz -lm -lgomp -lpthread  -lMagickCore  -ldl -lcrypt -lm   -lc
cp RMagick2.so ../../lib/RMagick2.so

libxml-ruby[editar]

gem install libxml-ruby --no-rdoc --no-ri

icu[editar]

yum install libicu.x86_64 libicu-devel.x86_64
gem install icu --no-rdoc --no-ri

Tidy[editar]

yum install libtidy
ln -s /usr/lib64/libtidy-0.99.so.0.0.0 /usr/lib/libtidy.so
gem install tidy --no-rdoc --no-ri
# me ha tocado aplicar este parche http://patch-tracking.debian.net/patch/misc/view/libtidy-ruby/1.1.2-3/lib/tidy/tidybuf.rb a vi /usr/local/ruby/lib/ruby/gems/1.8/gems/tidy-1.1.2/lib/tidy/tidybuf.rb

otras[editar]

gem install gettext --no-rdoc --no-ri
gem install whois --no-rdoc --no-ri
gem install graticule --no-rdoc --no-ri
gem install GeoRuby --no-rdoc --no-ri

Sphinx[editar]

wget http://www.sphinxsearch.com/downloads/sphinx-0.9.8.1.tar.gz
tar -zxvf sphinx-0.9.8.1.tar.gz
cd sphinx-0.9.8.1
export LDFLAGS="-Wl,-R/usr/local/mysql/lib/mysql" # para que encuentre la libmysqlclient.so, se comprueba con ldd src/indexer
./configure --with-mysql=/usr/local/mysql # si pongo --program-prefix=/usr/local/sphinx make install me da error
make
make install

Memcached[editar]

yum install libevent.x86_64 libevent-devel.x86_64 # dependencia
wget http://memcached.googlecode.com/files/memcached-1.4.0.tar.gz
tar -zxvf memcached-1.4.0.tar.gz
cd memcached-1.4.0
./configure
make
make install
adduser memcached