Alvo
Gostaria de instalar o PDF Tools na minha GUI Emacs no MacOSX (versão 25.0.50 instalada via Homebrew no MacOSX 10.10.2) porque o README diz que é possível.
Configuração
Instalei poppler
e exportei a variável PKG_CONFIG_PATH para o meu shell, conforme recomendado pelo README.
Em seguida, instalei o PDF Tools via MELPA e ele instalou um diretório no meu .emacs.d/elpa
diretório chamado~/.emacs.d/elpa/pdf-tools-20150620.1632
Problema
Quando executei o pdf-tools-install
comando, recebo os seguintes erros por não conseguir encontrar o diretório correto:
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
O que eu tentei
Eu tentei reinstalar o pacote com
package-reinstall
Eu procurei respostas específicas no EmacsWiki, este site, reddit.
Respostas:
Para mim, em 13 de abril de 2017, uma maneira confiável de instalar ferramentas em pdf no OS X (Mavericks / Sierra) é usar as seguintes configurações e instruções das ferramentas em pdf (nos comentários):
Obviamente, você não precisa usar o pacote de uso. Você pode apenas precisar de ferramentas pdf depois de instalá-lo através do sistema de pacotes Emacs e depois exigir, mas ainda precisa definir o caminho para epdfinfo como no código acima.
fonte
(pdf-tools-handle-upgrades nil)
- recebofunction void
um erro. Eu não usouse-package
, então tentei alterar a ordem das coisas no meu .emacs. , sem sucesso. Não é um problema importante, pois você também fornece uma resposta para a atualização :) É necessário instalar o homebrewbrew install homebrew/emacs/pdf-tools
. Percorrendo a saída do terminal, acho que isso ocorre porque o Mavericks não é mais suportado pelo Homebrew ou pela Apple.:pin melpa-stable
. Obrigado!pdf-tools
não faz mais partehomebrew-core
; foi migrado paradunn/emacs
, então você precisa executar primeirobrew tap dunn/emacs
.brew install pdf-tools --HEAD
no caso de você obter erro de compilação combrew install pdf-tools
Funcionou!
Não tenho 100% de certeza sobre os detalhes do que o fez funcionar. Como comentadores apontam corretamente, houve um problema com os pacotes / diretórios que foram instalados / compilados, mas funcionou na próxima vez em que executei
pdf-tools-install
Coisas que eu tentei / fiz
emacs --daemon
servidor (ou seja, ligue / desligue meu computador)homebrew
(suspeito que isso possa ter ajudado o script a encontrar os diretórios corretos porque, quando eu o estava executandopdf-tools-install
, estava solicitando um diretório ondeautogen.sh
estava e eu estava apontando para oelpa/pdf-tools
diretório e tentei/usr/local/Cask/...
diretórios onde o homebrew instalou o Emacs. Talvez isso tenha ajudado a encontrar os corretos?De qualquer forma, super feliz agora, como pode ter meus PDFs dentro do Emacs e, como um bônus extra, parece tornar os buffers eww muito melhores também.
Boa sorte para outros usuários do OSX se levantando e trabalhando. Por favor, poste se você identificar o que o ajudou a configurá-lo.
Obrigado @politza!
fonte
[Eu não tenho representante suficiente para comentar]
Instalar o CLISP e o poppler me ajudou - não funcionou antes.
Depois de instalá-los (e reiniciar minha máquina), consegui instalar com êxito (viva!) - no entanto, apenas com uma mistura de terminal e emacs.
De acordo com as instruções, você pode concluir os dois estágios (a compilação e a instalação) pelo terminal ou pelo Emacs ...
Eu tive que fazer especificamente a compilação no terminal (para criar o
pdf-tools-${VERSION}.tar
arquivo), mas a instalação teve que ser feita no Emacs, ou seja, usandoM-x package-install-file RET pdf-tools-${VERSION}.tar RET
.Não sei como os dois processos diferem, mas talvez isso ajude outra pessoa.
fonte
Eu tenho poppler e automake instalado usando homebrew, no entanto
pdf-tools-install
falhou com:no such program autoreconf
. Tentei novamente o pdf-tools-install do Emacs do tty / terminal e tudo construído corretamente. Eu acho que algumas configurações de ambiente não estavam sendo selecionadas no Emacs baseado em GUI.fonte
Eu só quero explicar em breve como eu fiz isso enquanto usava
use-package
e como provavelmente deve funcionar para qualquer pessoa. Em um terminal:Em seguida, no emacs, execute o seguinte:
Como já foi dito, isso falhará, mas você deve obter um buffer chamado
*compilation*
que se parece com isso:(a razão do erro parece ser que "/ usr / local / bin" não está na variável $ PATH e é meio difícil de adicioná-la, pois os subprocessos do emacs usam o padrão
$PATH
que geralmente perde esse diretório)Agora tudo o que você precisa fazer é copiar a seguinte linha do buffer e executá-la em um terminal novamente (onde
/usr/local/bin
está o $ PATH):fonte
Esta resposta pressupõe que o usuário tenha uma instalação de Macports com a
poppler
porta / pacote instalado. [Eu tenho uma pequena frota de máquinas antigas ainda executando o OSX 10.6.8 (Snow Leopard), e esse é o sistema que eu costumava instalarpdf-tools
. Minhapoppler
versão é 0.42.0_0. Consulte o pdf-tools README.md para obter requisitos adicionais - eles provavelmente já foram instalados via Macports.]Faça o download e extraia
pdf-tools-master.zip
ou clone o repositório na máquina local.Eu usei
eshell
no Emacs e executei a seguinte configuração:(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"))
Obviamente, você pode usar o terminal e definir as configurações relevantes em vez de usá-lo
eshell
.cd
para o diretório do repositório../pdf-tools-master/server
./autogen.sh
./configure --prefix=/path/to/macports
ou em outro lugar, se assim o desejar.Depois de executar o
configure
na etapa acima, encontrei um erro:./configure: line 4745: syntax error near unexpected token 'png,' ./configure: line 4745: 'PKG_CHECK_MODULES(png, libpng)'
Pesquisou e encontrou no Google: https://github.com/politza/pdf-tools/issues/142
Solução recomendada é executar
autoreconf
:/path/to/macports/bin/autoreconf
Em seguida, execute
configure
novamente - desta vez, funcionou como esperado../configure --prefix=/path/to/macports
ou em outro lugar, se assim o desejar.make
make install
Verifique se você tem o recém-instalado
epdfinfo
no local do prefixo definido; por exemplo,/path/to/macports/bin/epdfinfo
Copie os
lisp
arquivos para oload-path
Emacs - oslisp
arquivos estão no repositório em../pdf-tools-master/lisp
Se o PATH para
epdfinfo
não estiver em um local onde o Emacs possa localizá-lo, ajuste-o ... além do escopo desta resposta. Ou, você pode definir o caminho absoluto, configurando a variávelpdf-info-epdfinfo-program
.Também configurei o local exato para
convert
, definindo a variávelpdf-util-convert-program
; ou, você pode ajustar o PATH para que o Emacs saiba onde procurar o executável.No Emacs, avalie
(require 'pdf-tools)
Experimente ativando
pdf-view-mode
um buffer de arquivo PDF.fonte
Quando alguns pacotes são atualizados, é necessário atualizar também suas dependências ou arquivos de pré-requisito. Nesse caso, o servidor precisa de alguns requisitos (para obter mais informações, acesse https://github.com/politza/pdf-tools , seção de pré-requisito). Portanto, eu apenas sigo as instruções lá:
pkg-config
, definindoPKG_CONFIG_PATH
:e a tentativa de executar novamente o emacs ou spacemacs.
fonte