bundler osx-elcapitan therubyracer

bundler - Instale la gema therubyracer en OSX 10.11 El Capitán



osx-elcapitan (7)

bundle install falla con Make sure that `gem install therubyracer -v ''0.12.1''` succeeds before bundling

gem install therubyracer -v ''0.12.1'' falla con errores que parecen estar relacionados con la compilación

Antes de esto, la gema libv8 tenía problemas, pero ahora está instalada gracias a las siguientes publicaciones de SO.

¿Las guías para arreglar el rubyracer para los Mavericks parecen no funcionar debido a los cambios en El Capitán?

ln: /usr/bin/cpp: Operation not permitted


  1. Instalar xcode a través de la tienda de aplicaciones
  2. Instale ''herramientas de línea de comando'' para xcode ( xcode-select --install )
  3. Si usaba rbenv, después de instalar ruby ​​necesitabas rbenv rehash
  4. Suponiendo que haya ejecutado el gem install bundler y haya obtenido errores, elimine su desorden:

    gem uninstall libv8 gem uninstall therubyracer brew rm v8

  5. Instalar gcc4.2

    brew tap homebrew/dupes brew install apple-gcc42

  6. Instalar v8

    brew tap homebrew/versions brew install v8-315 brew link --force v8-315

  7. Instalar gemas

    gem install libv8 -- --with-system-v8 gem install therubyracer

    si obtiene dyld: lazy symbol binding failed: Symbol not found un dyld: lazy symbol binding failed: Symbol not found , @rpbaltazar sugiere una alternativa:

    bundle config --local build.libv8 --with-cxx=/usr/local/bin/g++-4.2 bundle install


(Publicación como un comentario para facilitar la lectura, pero esto debería ser un complemento a la respuesta original aceptada)

Después de ejecutar la respuesta aceptada, estaba enfrentando el error descrito en los comentarios.

La solución que encontré útil para mí fue ejecutar el siguiente

gem uninstall libv8 gem uninstall therubyracer bundle config --local build.libv8 --with-cxx=/usr/local/bin/g++-4.2 bundle install

Tenga en cuenta que los pasos iniciales de la respuesta aceptada son necesarios, es decir, la instalación del compilador.


La answer proporcionada en la página de therubyracer Github funcionó para mí:

brew tap homebrew/versions brew install v8-315 brew link --force v8-315 gem install libv8 -- --with-system-v8 gem install therubyracer


Primero intente eliminar su Gemfile.lock y ejecute bundle install nuevo. Gemfile.lock será creado de nuevo.

Esto funcionará para la mayoría de los casos en El Capitán.

Sin eso, solo instalará las mismas versiones mencionadas en Gemfile.lock. Si elimina este archivo, la bundle install recuperará las versiones más recientes de sus gemas.


Sé que esta pregunta es específicamente sobre la instalación de therubyracer -v ''0.12.1'' , pero la solución es actualizar a ''0.12.2'' .

He luchado con esto en algunos proyectos y siempre lo olvido. Entonces eventualmente lo recuerdo y todo funciona.

Asegúrese de limpiar todo lo que haya agregado a bundle config una vez que no lo necesite con bundle config --delete build.libv8 .

Aquí está el hilo en el repositorio de gemas sobre esto: https://github.com/cowboyd/therubyracer/issues/398#issuecomment-238161167



Todavía tenía problemas con la respuesta de @xxjjnn. La siguiente respuesta de github resolvió. Mi configuración actual: El Capitán 10.11.4 y Xcode 7.3.

brew tap homebrew/versions brew install v8-315 gem install libv8 -v ''3.16.14.13'' -- --with-system-v8 gem install therubyracer -- --with-v8-dir=/usr/local/opt/v8-315 bundle install