No puedo instalar WordGrinder en Yosemite

0

Recientemente, he estado intentando instalar WordGrinder en Yosemite. Primero intenté obtener los paquetes tar más recientes del sitio web de los desarrolladores y usarlos, pero encontré algunos errores de vinculación de biblioteca con lua y ncursesw . Intenté usar MacPorts porque asumí que haría todo eso por mí, pero resultó que los problemas que encontré primero eran simplemente la confusión que quedaba de algunas instalaciones anteriores de MacPorts sucias. Corrí port selfupdate y desaparecieron. Después de más dificultades con MacPorts, decidí reconsiderar la construcción desde la fuente. Pero ahora, cuando uso make , obtengo la siguiente serie de errores:

Maat:wordgrinder-0.5.1 Matt$ make
CC .obj/release/src/c/arch/unix/cursesw/dpy.o
error: unable to open output file '.obj/release/src/c/arch/unix/cursesw/dpy.o': 'Error opening output file '.obj/release/src/c/arch/unix/cursesw/dpy.o': Permission denied'
1 error generated.
make: *** [.obj/release/src/c/arch/unix/cursesw/dpy.o] Error 1
Maat:wordgrinder-0.5.1 Matt$ sudo make
CC .obj/release/src/c/arch/unix/cursesw/dpy.o
src/c/arch/unix/cursesw/dpy.c:164:8: error: use of undeclared identifier 'KEY_EVENT'
                case KEY_EVENT: return "KEY_EVENT";
                     ^
1 error generated.
make: *** [.obj/release/src/c/arch/unix/cursesw/dpy.o] Error 1
Maat:wordgrinder-0.5.1 Matt$ 

Primero, tengo que usar sudo para que el compilador acceda al archivo de salida (no creo que deba hacerlo, pero no es el problema principal) y luego, cuando lo hago, Me encuentro con el otro, sobre el " use of undeclared identifier 'KEY_EVENT' ". Revisé el makefile y el archivo README.Unix varias veces, pero no puedo hacer ni la cabeza ni la cola. Leí en otro problema no relacionado con la instalación de WordGrinder en OS X que "construir en Mac es un cerdo", y ahora no puedo dejar de estar de acuerdo. ¿Qué está mal y cómo puedo hacer que WordGrinder se instale correctamente en OS X?

EDIT 3: Al final, borré mis complicadas carpetas / usr / local y / opt y reorganicé una gran parte de mi sistema de archivos. Instalé Homebrew en la pizarra limpia que había creado, luego instalé lua y Homebrew / dupes / ncurses usando Homebrew según los pasos que Alistair enumeró en su respuesta. Luego descargué wordgrinder-0.5.2.1 en lugar de wordgrinder-0.5.1, porque 0.5.2.1 había agregado soporte de instalación de Homebrew. No más problemas con la tecla de retroceso. En este punto, wordgrinder-static se ejecutaría, pero wordgrinder no lo haría (nuevamente, como informó Alistair). La instalación de luafilesystem permitió que se ejecutara wordgrinder , como predije en una revisión anterior de esta respuesta. Usé Homebrew para instalar luarocks en mi bodega ( brew install luarocks ) y luego usé luarocks para instalar luafileystem en mi directorio / usr / local / lib / luarocks / rocks. wordgrinder ahora funciona perfectamente bien, sin problemas.

Muchas gracias a Alistair por toda la ayuda. Aprendí mucho más de lo que ya lo había hecho en el proceso de tratar de hacer que esto funcionara, y es posible que yo pueda encargarme del resto, como dije anteriormente, documentaré mis resultados aquí cuando los encuentre.

    
pregunta Matthew Brown 17.01.2015 - 04:30

2 respuestas

2

ACTUALIZACIÓN: Como lo señala Matthew a continuación, el recientemente publicado 0.5.2.1 tiene un mejor soporte para OS X y brew ahora, así que descargando, extrayendo wordgrinder-0.5.2.1.tar.bz2 de < a href="http://sourceforge.net/projects/wordgrinder/files/wordgrinder/"> enlace y ejecutar make debería funcionar. La única dependencia que necesita instalar a través de brew ahora parece ser lua, así que primero brew install lua si aún no tiene lua instalada.

ORIGINAL: Así es como conseguí que funcionara con la versión anterior ...

  • Descargue y extraiga el archivo wordgrinder-0.5.1.tar.bz2 de enlace
  • Usé brew para instalar lua: brew install lua
  • brew usado para instalar ncurses desde homebrew-dupes: brew install homebrew/dupes/ncurses
  • Hizo las siguientes modificaciones al Makefile. Puede descargar el archivo modificado aquí .
    • agregó una definición de z_crc_t
    • LDFLAGS modificados para que pueda encontrar las bibliotecas instaladas a través de brew
    • CPPFLAGS modificado e INCLUYE para que pueda encontrar los archivos incluidos a través de brew
    • modificó ldflags porque busca "lua5.2" pero la biblioteca en OS X se llama "lua.5.2"
  • Se ejecutó make , que funciona bien con estos cambios. bin/wordgrinder se bloquea de inmediato, pero bin/wordgrinder-static parece funcionar bien.
  • el 'sudo make install' falla, por lo que copié wordgrinder-static a /usr/local/bin y parece que funciona correctamente allí.
respondido por el Alistair McMillan 17.01.2015 - 16:11
1

Basándome en la información que Alistair y Matthew ya proporcionaron, pude instalar Wordgrinder tanto en Mavericks como en Yosemite a través de una combinación de los dos métodos que describió. De hecho, pude ejecutar wordgrinder, no solo wordgrinder-static. Pasos para reproducir:

brew install lua
brew install Homebrew/dupes/ncurses
brew install luarocks
brew install zlib
luarocks install luafilesystem

y luego, en la carpeta extraída de wordgrinder-0.5.2.1.

make
sudo make install PREFIX=/usr

Alistair y Matthew proporcionaron más información útil aquí de lo que pude localizar en cualquier número de foros y listas de correo.

    
respondido por el friendimaginary 09.02.2015 - 22:28

Lea otras preguntas en las etiquetas