Objetivo
Me gustaría instalar PDF Tools en mi GUI Emacs en MacOSX (versión 25.0.50 instalada a través de Homebrew en MacOSX 10.10.2) porque el archivo README dice que es posible.
Preparar
Instalé poppler
y exporté la variable PKG_CONFIG_PATH a mi shell según lo recomendado por el archivo README.
Luego instalé PDF Tools a través de MELPA e instalé un directorio en mi .emacs.d/elpa
directorio llamado~/.emacs.d/elpa/pdf-tools-20150620.1632
Problema
Cuando ejecuté el pdf-tools-install
comando recibo los siguientes errores sobre no poder encontrar el directorio correcto:
Need to build the server, do it now ? (y or n) y
pdf-tools--melpa-build-server: No such directory: /Users/m/.emacs.d/elpa/pdf-tools-20150613.414/build
Lo que he intentado
He intentado reinstalar el paquete con
package-reinstall
He buscado respuestas específicas en EmacsWiki, este sitio, reddit.
Respuestas:
Para mí, a partir del 13 de abril de 2017, una forma confiable de instalar herramientas pdf en OS X (Mavericks / Sierra) es usar la siguiente configuración e instrucciones de herramientas pdf (en los comentarios):
Por supuesto, no tiene que usar use-package. Solo puede requerir herramientas pdf después de instalarlo a través del sistema de paquetes Emacs y luego requerirlo, pero aún tiene que definir la ruta a epdfinfo como en el código anterior.
fuente
(pdf-tools-handle-upgrades nil)
, obtengofunction void
un error. No lo usouse-package
, así que he intentado alterar el orden de las cosas en mis .emacs. , sin éxito. No es un problema importante, ya que también proporciona una respuesta para la actualización :) Se requiere instalar desde homebrewbrew install homebrew/emacs/pdf-tools
. Hojeando la salida del terminal, creo que esto se debe a que Mavericks ya no es compatible ni con Homebrew ni con Apple.:pin melpa-stable
. ¡Gracias!pdf-tools
ya no es parte dehomebrew-core
; se ha migrado adunn/emacs
, por lo que primero debe ejecutarbrew tap dunn/emacs
.brew install pdf-tools --HEAD
en caso de que se compila con erroresbrew install pdf-tools
¡Funcionó!
No estoy 100% seguro de los detalles sobre qué lo hizo funcionar. Como los comentaristas señalan correctamente, hubo un problema con los paquetes / directorios que se instalaron / compilaron, pero funcionó la próxima vez que ejecuté
pdf-tools-install
Cosas que probé / hice
emacs --daemon
servidor (es decir, encendí / apagué mi computadora)homebrew
(tengo la sospecha de que esto puede haber ayudado al script a encontrar los directorios correctos porque cuando lo estaba ejecutando a través depdf-tools-install
él estaba pidiendo un directorio dondeautogen.sh
estaba y lo señalaba alelpa/pdf-tools
directorio y había intentado/usr/local/Cask/...
directorios donde homebrew instaló Emacs. ¿Tal vez esto lo ayudó a encontrar los correctos?De todos modos, súper contento ahora, ya que puede tener mis PDF dentro de Emacs y, como un bono extra, parece hacer que los buffers de eww sean mucho mejores también.
Mucha suerte a otros usuarios de OSX que lo ponen en funcionamiento. Publique si señala qué le ayudó a configurarlo.
Gracias @politza!
fuente
[No tengo suficiente representante para comentar]
La instalación de CLISP y poppler me ayudó. Antes no funcionaba en absoluto.
Después de tener estos instalados (y reiniciar mi máquina), logré instalar con éxito (¡hurra!), Sin embargo, solo con una mezcla de terminal y emacs.
De acuerdo con las instrucciones , puede completar ambas etapas (la compilación y la instalación) a través del terminal o dentro de Emacs ...
Tuve que hacer específicamente la compilación en el terminal (para crear el
pdf-tools-${VERSION}.tar
archivo), pero la instalación tuvo que hacerse en Emacs, es decir, usandoM-x package-install-file RET pdf-tools-${VERSION}.tar RET
.No sé cómo difieren los dos procesos, pero tal vez esto ayude a alguien más.
fuente
Tengo poppler y automake instalan mediante homebrew, sin embargo
pdf-tools-install
fallado con:no such program autoreconf
. Volví a intentar instalar pdf-tools-install de tty / terminal Emacs y todo está construido correctamente. Creo que algunas configuraciones de entorno no se recogieron en Emacs basado en GUI.fuente
Solo quiero explicar brevemente cómo lo hice mientras lo usaba
use-package
y cómo probablemente debería funcionar para cualquiera. En una terminal:Luego, en emacs ejecuta lo siguiente:
Como ya se dijo, esto fallará, pero debería obtener un búfer llamado
*compilation*
que se ve así:(la razón del error parece ser que "/ usr / local / bin" no está en la variable $ PATH y es un poco difícil agregarlo, ya que los subprocesos de emacs usan el valor predeterminado
$PATH
que generalmente pierde este directorio)Ahora todo lo que tiene que hacer es copiar la siguiente línea desde el búfer y ejecutarla nuevamente en un terminal (donde
/usr/local/bin
está en $ PATH):fuente
Esta respuesta supone que el usuario tiene una instalación de Macports con el
poppler
puerto / paquete instalado. [Tengo una pequeña flota de máquinas más antiguas que todavía ejecutan OSX 10.6.8 (Snow Leopard), y ese es el sistema que solía instalarpdf-tools
. Mipoppler
versión es 0.42.0_0. Consulte las herramientas pdf README.md para conocer los requisitos adicionales: probablemente ya se instalaron a través de Macports.]Descargue y extraiga
pdf-tools-master.zip
, o clone el repositorio en la máquina local.Utilicé
eshell
dentro de Emacs y ejecuté la siguiente configuración:(progn (setenv "PATH" "/usr/bin:/bin:/usr/sbin:/sbin:/path/to/macports/bin") (setenv "CPPFLAGS" "-I/path/to/macports/include") (setenv "LDFLAGS" "-L/path/to/macports/lib") (setenv "CFLAGS" "-Wall -O0 -g3"))
Por supuesto, puede usar el terminal y configurar los ajustes relevantes en lugar de usar
eshell
.cd
al directorio del repositorio../pdf-tools-master/server
./autogen.sh
./configure --prefix=/path/to/macports
o en otro lugar si así lo desea.Después de ejecutar el
configure
en el paso anterior, me encontré con un error:./configure: line 4745: syntax error near unexpected token 'png,' ./configure: line 4745: 'PKG_CHECK_MODULES(png, libpng)'
Buscado en Google y encontrado: https://github.com/politza/pdf-tools/issues/142
La solución recomendada es ejecutar
autoreconf
:/path/to/macports/bin/autoreconf
Luego corre de
configure
nuevo, esta vez funcionó como se esperaba../configure --prefix=/path/to/macports
o en otro lugar si así lo desea.make
make install
Verifique que tiene el recién instalado
epdfinfo
en la ubicación del prefijo establecido; p.ej,/path/to/macports/bin/epdfinfo
Copie los
lisp
archivos enload-path
Emacs: loslisp
archivos están en el repositorio en../pdf-tools-master/lisp
Si la RUTA hacia
epdfinfo
no se encuentra en un lugar donde Emacs pueda ubicarla, ajústela ... más allá del alcance de esta respuesta. O bien, puede establecer la ruta absoluta configurando la variablepdf-info-epdfinfo-program
.También configuré la ubicación exacta para
convert
establecer la variablepdf-util-convert-program
; o bien, puede ajustar la RUTA para que Emacs sepa dónde buscar el ejecutable.En Emacs, evalúe
(require 'pdf-tools)
Pruébelo habilitando
pdf-view-mode
en un búfer de archivos PDF.fuente
Cuando se actualizan algunos paquetes, es necesario actualizar también sus dependencias o archivos de requisitos previos. En este caso, el servidor necesita algunos requisitos (para obtener más información, visite https://github.com/politza/pdf-tools , sección de requisitos previos). Por lo tanto, solo sigo las instrucciones allí:
pkg-config
configurandoPKG_CONFIG_PATH
:y el intento de ejecutar nuevamente emacs o spacemacs.
fuente