Recibo este mensaje de error cuando intento instalar gollum en Mac OS X 10.10.3 y Macports:
sudo gem install charlock_holmes -- --with-icu-dir=/opt/local
********* Se requiere icu (brew install icu4c o apt-get install libicu-dev)
estela pregunta ya ha sido publicadasiendo la solución:
"Siga el mensaje de error: use brew para instalar icu4c".
¿Hay alguna manera de evitar cambiar a homebrew para instalar solo un paquete?
Respuesta1
Esta pregunta también es similar aÉste, pero su respuestatambiénterminó siendo "simplemente abandonar MacPorts e instalar Homebrew". Nunca he sido usuario de Homebrew; no es que tenga nada de malo, recién comencé con MacPorts y estoy bastante decidido a mi manera. Entonces, investigué un poco más con la primera respuesta en lugar de la aceptada, y creo que encontré (parte de) tu problema: debería --with-icu-dir
apuntar a /opt/local/lib/icu
en lugar de /opt/local
.
Por supuesto, esa es sólo una pieza del rompecabezas; las banderas tuen realidadla necesidad es --with-opt-lib
y --with-opt-include
. Es decir, --with-icu-dir
parece innecesario ya que gem
parece poder encontrar esa configuración siempre que proporcione --with-opt-lib
:
sudo gem install charlock_holmes -- --with-opt-lib=/opt/local/lib --with-opt-include=/opt/local/include
Aunque esto debería ser correcto, ya que uso rbenv ymacports desde mi directorio de inicio, mi invocación fue algo diferente. Pero el concepto sigue siendo el mismo:
gem install charlock_holmes -- --with-opt-lib=$HOME/macports/lib --with-opt-include=$HOME/macports/include
Dicho todo esto, mi objetivo personal era instalar con Bundler, así que aquí hay material extra para eso:
Para que Bundler pase los indicadores de compilación de manera adecuada, puede usar el bundle config
comando para establecer los valores apropiados, por ejemplo:
bundle config --local build.charlock_holmes --with-opt-lib=/opt/local/lib --with-opt-include=/opt/local/include
Y entonces un regular bundle install
debería funcionar. Nuevamente, para mi configuración particular, tuve que hacerlo así:
bundle config --local build.charlock_holmes '--with-opt-lib=$HOME/macports/lib --with-opt-include=$HOME/macports/include'
Las comillas simples, mientras que noestrictamentenecesario, son geniales si hago algo malo yrevisa mi .bundle/config
registro con el repositorio, o cualquier otra razón por la que podría copiar la configuración a un usuario diferente y ejecutarla allí, ya que significa que $HOME
no se evalúa hasta que Bundler realmente construye la gema.
Respuesta2
No soy usuario de Mac, pero parece que sus únicas opciones son homebrew o instalar desde la fuente. Hay instrucciones sobre cómo instalar desde la fuente.aquí. Esa publicación es de 2010, pero hay instrucciones básicamente idénticas de 2013 enesta publicación, por lo que probablemente sigan siendo precisos.
Respuesta3
Lo instalé icu
desde MacPorts
sudo -E port install icu
Luego instalé charlock_holmes
usando
sudo -E gem install charlock_holmes -- \
--with-opt-lib=/opt/local/lib \
--with-opt-include=/opt/local/include/
Finalmente instalé Gollum usando
sudo -E gem install gollum
(esto es en Mac OS X 10.11.5, fwiw)