with sierra rails mac latest instalar for ruby-on-rails ruby macos rvm

ruby-on-rails - sierra - rvm for windows 10



cómo resolver el error "la instalación de ruby no tiene psiquiatría"? (30)

Creé los archivos libyaml por separado del código fuente y los instalé en / usr / local / lib. El rubí que RVM creó todavía no los vio, y en lugar de ensuciar con el archivo MAKE o el sistema LD_LIBRARY_PATH Acabo de copiar / usr / local / lib / libyaml * a ~ / .rvm / rubies / ruby-1.9.3-p327 / lib /

Eso calmó la advertencia.

Usé rvm para instalar ruby ​​1.9.3. a pesar de que se instaló con éxito, se quejó de libyaml. y ahora cada vez que quiero instalar una gema (por ejemplo, rieles) aparece esta advertencia:

It seems your ruby installation is missing psych (for YAML output). To eliminate this warning, please install libyaml and reinstall your ruby.

Yo uso Mac os X 10.7 (Lion).


Cuando cambio de 64 bits a 32 bits en Snow Leopard 10.6.8, reinstalé el ruby ​​(rvm usado) para ejecutar en 32 bits y encontré el mismo problema. Así que simplemente ''limpié'' todo lo que almacenaba en memoria caché antes de rvm y resolvía problemas. Espero que este consejo pueda ayudar a alguien.

rvm limpieza todo

rvm install ruby_version_here // (De esta forma, rvm también volverá a descargar la última yaml).

Por cierto, si aún te encuentras con este problema, creo que puedes intentarlo:

joya instalar psych


En CentOS 6.3, ninguno de los anteriores funcionó. Sin embargo, la instalación de libyaml desde la fuente antes de instalar Ruby resolvió el problema.

$ wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz $ tar xzvf yaml-0.1.4.tar.gz $ cd yaml-0.1.4 $ ./configure --prefix=/usr/local $ make $ sudo make install

y entonces

rvm install 1.9.3 gem install rails


En Snow Leopard, la solución de Catharz no funcionó para mí. Esta solución, sin embargo, hizo:

brew install libyaml rvm get head rvm reinstall 1.9.3 --with-gcc=clang

(La reinstalación rvm me dio una advertencia acerca de que clang no tenía la opción "--with-libyaml" pero solucionó el mensaje de error independientemente).


En Solaris:

# sudo crle -64 -l /usr/local/lib

agregar /usr/local/lib a la ruta de búsqueda de la biblioteca compartida (ver man crle)


En mi caso

rvm pkg install libyaml

y

rvm reinstall ruby-1.9.3-p125

resuelve el problema.

Para las personas que usan Ubuntu, asegúrese de que libtool esté instalado antes de los pasos anteriores:

sudo apt-get install libtool

Para usuarios de macOS (con homebrew):

rm -rf /usr/local/lib/ruby/gems/ && brew reinstall ruby


En mi caso, todo lo que tenía que hacer era

rm -rf /usr/local/lib/ruby/gems/2.4.0/gems/psych-2.2.4 rm -rf /usr/local/lib/ruby/gems/2.4.0/extensions/x86_64-darwin-16/2.4.0/psych-2.2.4

Ahora, FWIW, gem list incluye

psych (2.2.4, default: 2.2.2)


En mi caso, la solución fue agregar la gema psych al Gemfile.


Estaba teniendo este error y noté que tenía instaladas diferentes versiones de Ruby con HomeBrew, junto con muchas gemas que ya no usaba. Entonces hizo una limpieza completa como esta:

$ brew remove --force ruby # remove all versions installed $ sudo rm -rf /usr/local/lib/ruby # remove all gems and leftover files $ brew install ruby $ gem install bundler $ bundle install

Si no usa un Gemfile , asegúrese de saber qué gemas volver a instalar.


Esto es lo que funcionó para mí en Ubuntu:
- instalando libyaml-dev (sudo apt-get install libyaml-dev)
- instalando rvm + ruby ​​1.9.3


Esto funcionó para mí al menos en Ubuntu 10.04

$ sudo apt-get install libtool

$ rvm reinstalar 1.9.3


Estoy usando

rvm 1.16.20 (versión) por Wayne E. Seguin, Michal Papis [https://rvm.io/]

y también obtuvo el siguiente error durante la instalación del paquete

.rvm / rubies / ruby-1.9.3-p194 / lib / ruby ​​/ 1.9.1 / yaml.rb: 56: in `'': Parece que a su instalación de ruby ​​le falta psych (para salida YAML). Para eliminar esta advertencia, instale libyaml y vuelva a instalar su ruby.

Aquí hay tres formas diferentes de resolver este error sin tener que instalar gem psych

  1. exportar LD_LIBRARY_PATH = / usr / local / lib
  2. alter /etc/ld.so.conf

    sudo su - root echo /usr/local/lib64 >> /etc/ld.so.conf echo /usr/local/lib >> /etc/ld.so.conf ldconfig

  3. Repara la instalación de rvm ruby ​​1.9.3 a través de

    patch .rvm/scripts/functions/manage/ruby < ruby-1.9.3-LDFLAGS.patch rvm uninstall ruby-1.9.3-p194 export LDFLAGS=''-L /usr/local/lib64 -L/usr/local/lib -Xlinker -R/usr/local/lib64 -Xlinker -R/usr/local/lib'' rvm install ruby-1.9.3-p194 --disable-binary grep configure_args .rvm/src/ruby-1.9.3-p194/config.log # to confirm LDFLAG

$ diff -c .rvm/{src/rvm/,}scripts/functions/manage/ruby *** .rvm/src/rvm/scripts/functions/manage/ruby 2012-11-10 06:28:14.000000000 +0000 --- .rvm/scripts/functions/manage/ruby 2013-01-25 17:18:00.000000000 +0000 *************** *** 106,123 **** # when relative is in effect libyaml is installed in ruby itself so it will be moved with ruby prefix_path="${rvm_rubies_path}/${rvm_ruby_string}" libyaml ! __rvm_update_configure_env CFLAGS="-I${rvm_rubies_path}/${rvm_ruby_string}/include" ! __rvm_update_configure_env LDFLAGS="-L${rvm_rubies_path}/${rvm_ruby_string}/lib" if [[ -d "${rvm_rubies_path}/${rvm_ruby_string}/lib64" ]] ! then __rvm_update_configure_env LDFLAGS="-L${rvm_rubies_path}/${rvm_ruby_string}/lib64" fi else libyaml_installed || libyaml # Installs libyaml ! __rvm_update_configure_env CFLAGS="-I${rvm_path}/usr/include" ! __rvm_update_configure_env LDFLAGS="-L${rvm_path}/usr/lib" if [[ -d "${rvm_path}/usr/lib64" ]] ! then __rvm_update_configure_env LDFLAGS="-L${rvm_path}/usr/lib64" fi fi --- 106,123 ---- # when relative is in effect libyaml is installed in ruby itself so it will be moved with ruby prefix_path="${rvm_rubies_path}/${rvm_ruby_string}" libyaml ! __rvm_update_configure_env CFLAGS="-I${rvm_rubies_path}/${rvm_ruby_string}/include ${CFLAGS}" ! __rvm_update_configure_env LDFLAGS="-L${rvm_rubies_path}/${rvm_ruby_string}/lib ${LDFLAGS}" if [[ -d "${rvm_rubies_path}/${rvm_ruby_string}/lib64" ]] ! then __rvm_update_configure_env LDFLAGS="-L${rvm_rubies_path}/${rvm_ruby_string}/lib64 ${LDFLAGS}" fi else libyaml_installed || libyaml # Installs libyaml ! __rvm_update_configure_env CFLAGS="-I${rvm_path}/usr/include ${CFLAGS}" ! __rvm_update_configure_env LDFLAGS="-L${rvm_path}/usr/lib ${LDFLAGS}" if [[ -d "${rvm_path}/usr/lib64" ]] ! then __rvm_update_configure_env LDFLAGS="-L${rvm_path}/usr/lib64 ${LDFLAGS}" fi fi


He reinstalado ruby ​​1.9.3 con el soporte de libyaml:

rvm reinstall 1.9.3 --with-libyaml

Me aseguré de usar 1.9.3 antes de instalar psych:

rvm use 1.9.3

Instalé psych:

gem install psych


Instalando ruby ​​con rvm para mac osx, use autolibs para instalar libyaml y la primera desinstalación de libyaml ayuda.

Esto funcionó para mí:

brew uninstall libyaml rvm autolibs enable rvm reinstall ruby-2.1.1


Intenté todas estas respuestas y todavía no pude hacerlo funcionar. Instalé libyaml con homebrew y luego instalé Ruby 1.9.3 y 2.0.0 con rvm. Cada vez se quejaba de que me faltaba psych (libyaml). Pero tratar de instalar libyaml me dijo que ya estaba instalado. Enjuague, repita. Urgh.

Finalmente, lo que hice fue desinstalar libyaml. Luego habilité autolibs en rvm , lo que (al menos en OSX) permite a rvm instalar y administrar dependencias más directamente. Ahora cuando instalé los Rubies, rvm pudo instalar libyaml y reconocer que estaba en el lugar correcto.

Entonces, si ha probado todas las otras opciones, intente eliminar realmente libyaml y luego instalar sus Rubies. Es contado-intuitivo a partir de los mensajes de error, pero eso fue lo que finalmente funcionó para mí.


Método de instalación de ruby ​​no RVM.

% uname -a Linux localhost.localdomain 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux % cat /etc/redhat-release CentOS release 6.4 (Final) % wget http://apt.sw.be/redhat/el5/en/x86_64/dag/RPMS/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm % sudo rpm -K rpmforge-release-0.3.6-1.el5.rf.*.rpm" % sudo rpm -ivh rpmforge-release-0.3.6-1.el5.rf.*.rpm"

DISABLE rpmforge editando este archivo y estableciendo enabled = 0% sudo vi /etc/yum.repos.d/rpmforge.repo

% grep rpmforge ~/.aliases alias rpmforge "sudo yum --disablerepo=''*'' --enablerepo=''rpmforge''" % rpmforge install libyaml libyaml-devel % sudo yum list installed | grep libyaml libyaml.x86_64 0.1.4-1.el5.rf @rpmforge libyaml-devel.x86_64 0.1.4-1.el5.rf @rpmforge

Libyaml-devel es la clave.

% tar zxvf ruby-1.9.3-p448.tar.gz % cd ruby-1.9.3-p448 % ./configure -prefix=$HOME/ruby-1.9.3-p448 % make ; make install % cd $HOME; ln -s ./ruby-1.9.3-p448 ruby

Actualice su ruta y origen .cshrc

% echo $PATH /home/francis/ruby/bin:/usr/sbin:/home/francis/bin:/home/francis/jdk1.7.0_25/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin % which ruby /home/francis/ruby/bin/ruby % gem update --system

Configura tu GEM_HOME en .cshrc y fuente

% echo $GEM_HOME % /home/francis/ruby/lib/ruby/gems % gem install mysql2 pg ruby-debug-ide rails capistrano capistrano-ext passenger


Ninguna de estas respuestas funcionó para mí.

Encontré mi respuesta en https://github.com/sstephenson/ruby-build/issues/119 Estoy en la máquina virtual Centos 6.3.

DEBES instalar libyaml antes de instalar ruby. SI YA instaló ruby, debe deshacerse de los archivos antes de volver a compilar la fuente.

# cd to your ruby source location rm -rf /usr/local/lib/ruby # clean out ruby files ./configure make && make install gem -v # check if error is fixed


Para aquellos con Mountain Lion y la versión RVM> = 1.18.x

RVM se envía con esta nueva herramienta que se usa como indicador al instalar versiones ruby. Se llama autolibs.

Me deshice de este problema psíquico haciendo lo siguiente:

rvm reinstall ruby-1.9.3-p392 --autolibs=3

Lea el texto de ayuda ANTES de hacer:

rvm help autolibs

Guay.


Si está construyendo ruby ​​desde la fuente (construí 1.9.3 en Fedora 20), necesitará esto antes de hacer la configuración / make para construir ruby:

yum install libyaml-devel

(además de yum install libyaml.) Similar a la respuesta de Francis usando rpmforge anterior.


Si ha instalado ruby ​​en macOS con homebrew, issue .

rm -rf /usr/local/lib/ruby/gems/ && brew reinstall ruby

Tenga en cuenta que esto eliminará todas las gemas instaladas. Mejor guarde una lista de las gemas instaladas con la gem list antes de ejecutar esto.


Si no usa rvm, sino que está compilando e instalando ruby ​​1.9.3 desde cero, por ejemplo, está administrando sus versiones de ruby ​​con rbenv , primero debe instalar libyaml. Obtenlo de http://pyyaml.org/ ; en este momento, el archivo que desea es http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz . Abra el tarball y el cd en la carpeta resultante. Entonces:

./configure --prefix=/usr/local make sudo make install

Ahora estás listo para construir ruby. Descargue ruby ​​de http://ftp.ruby-lang.org/pub/ruby/ . Abra el tarball y el cd en la carpeta resultante. Ahora:

./configure --prefix=/wherever/you/want/it/to/go make make install

(O posiblemente sudo make install , dependiendo de dónde lo esté colocando). Si usa rbenv, sabrá que ha funcionado si cambia a rbenv global 1.9.3-p194 (o como se llame a su versión) y gem --version funciona sin una advertencia. Eso funcionó para mí en Mac OS X 10.6.8. ( Actualización : Acabo de probar esto en Mac OS X 10.8.1 y parece que también funcionó bien allí).


También tuve problemas con las mismas fallas con rvm install ruby-2.0.0 durante muchas, MUCHAS horas. Probé todos los métodos diferentes para instalar libyaml; wget source , yum y rvm . También probé todos los diferentes enfoques enumerados en hilos similares. Como probé todos los métodos diferentes, tenía múltiples instalaciones y ubicaciones de libyaml.

RVM es perfectamente capaz de instalar las dependencias necesarias en ~/.rvm . Simplemente eliminar los archivos libyaml de la instalación que no es RVM solucionó este problema para mí:

sudo rm /usr/local/lib/libyaml*.* rvm reinstall ruby-2.0.0-p0

¡Trabajos!


Tengo esto arreglado finalmente. El problema fue que, aunque instalé libyaml con brew, nunca estuvo vinculado. Tuve que eliminar un archivo de encabezado conflictivo y luego brew link libyaml .


Tuve el mismo problema ( Cent OS 5.7 ), ninguna de las soluciones anteriores me funcionó.

// My console warning /usr/local/rvm/rubies/ruby-1.9.3-p286/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>'': It seems your ruby installation is missing psych (for YAML output). To eliminate this warning, please install libyaml and reinstall your ruby.

Después de hacer varias reinstalaciones, me di cuenta de que estaba buscando yaml en la versión de rubí de 1.9.1 lugar de 1.9.3 . Así que me degradaron

// obviously after installing `libyaml` rvm remove all rvm install 1.9.1 rvm use 1.9.1 --default

¡Y funcionó 8D!


Tuve el mismo problema (Lion 10.7.4) y lo solucioné actualizando rvm y luego reinstalando ruby

1) actualizar rvm https://rvm.io//rvm/install/

curl -L https://get.rvm.io | bash -s stable --ruby

2) Luego use rvm para reinstalar ruby ​​1.9.3 (que había sido instalado previamente con la versión anterior de rvm)

rvm reinstall 1.9.3


Tuve este problema libyaml no compilaría. Resulta que me faltaba libtool.

yum install libtool yum install libyaml (or rvm pkg install libyaml) rvm reinstall 1.9.3

Eso resolvió mi problema.


para ubuntu y rvm

sudo apt-get install libtool rvm pkg install libyaml rvm reinstall 1.9.3

trabajó


$ brew doctor $ brew link libyaml


brew install libyaml rvm reinstall 1.9.3

Es lo que funcionó para mí (en Snow Leopard).


sudo port install libyaml # or brew install libyaml rvm get latest rvm pkg install iconv rvm pkg install openssl rvm reinstall 1.9.3 --with-openssl-dir=~/.rvm/usr --with-iconv-dir=~/.rvm/usr curl -OL http://rubyforge.org/frs/download.php/75414/linecache19-0.5.13.gem curl -OL http://rubyforge.org/frs/download.php/75415/ruby-debug-base19-0.11.26.gem gem install linecache19-0.5.13.gem ruby-debug-base19-0.11.26.gem -- --with-ruby-include=$rvm_path/src/ruby-1.9.3-p125/ gem install ruby-debug19 rvm reload

recarga tu .rvmrc (cd out, cd in)

bundle