Servidor PDFtk no OS X 10.11


162

Uso o PDFTKServer OSX pre 10.11há mais de um ano sem problemas ao executar comandos na linha de comando.

Depois de instalar o OSX 10.11 beta, não consigo mais executar nenhum PDFTKcomando do servidor na linha de comando. Não gera nenhum erro, todos os comandos que tento executar ficam travados indefinidamente.

Instalei a partir de um pacote que baixei do PDFTKsite do servidor como sempre:

https://www.pdflabs.com/tools/pdftk-server/

Eu também tentei instalar a partir do código-fonte com o Homebrew. A instalação funciona, mas eu recebo os mesmos resultados, os comandos ficam no terminal:

Torneira Homebrew

Enviei a reclamação para a Apple por meio do aplicativo Assistente de feedback que é instalado durante a instalação da versão beta dois meses atrás, sem resposta.

Fui informado sobre o Apple Feedback Assistant:

Você provavelmente nunca receberá uma resposta. A Apple responde apenas através do Feedback Assistant para obter os principais erros do sistema operacional, onde eles precisam de informações adicionais. Não é uma maneira de obter suporte, muito menos para aplicativos de terceiros.

Também entrei em contato com o PDF Labs , os criadores do pacote, sem resposta.

No MacPorts, eles estão tendo problemas com a compilação no OS X 10.11, isso significa que há um problema de compatibilidade com o PDFtk e o 10.11 no nível do software?

Pesquisei na Web uma pista sobre o que pode estar causando o problema e como corrigi-lo, mas não encontrei nada tangível.

No OS X, não sei como descobrir se agora existe uma permissão ou caminho ou mesmo um problema de Java após a atualização.

Qualquer ajuda para solucionar a causa raiz ou oferecer uma solução é apreciada.


ATUALIZAÇÃO 1:

Eu ouvi de Sid Steward no PDF Labs :

Temos lutado com isso quase desde que a versão beta esteja disponível. Nós ainda estamos trabalhando nisso. Parece haver uma incompatibilidade com uma das bibliotecas (não Apple) que o pdftk usa e o OS X 10.11. Atualmente, estou instalando mais uma atualização nas ferramentas de desenvolvedor da Apple com a esperança de que isso resolva o problema. Vou atualizá-lo com o nosso progresso.


ATUALIZAÇÃO 2:

Sid Steward no PDF Labs novamente:

Parece que existem dois threads em execução no pdftk e que eles estão em um impasse. Isso significa que cada segmento está esperando o outro terminar. Não sou especialista aqui, mas essa é a minha impressão. Aqui está uma captura de tela do Activity Monitor do Mac para ilustrar:

insira a descrição da imagem aqui

O instantâneo acima é sobre a tentativa de executar o binário pdftk atualmente em nosso site no OS X 10.11. A biblioteca libgcj mencionada acima vem com o pdftk, onde as outras são bibliotecas do OS X.

Como eu disse, acabei de instalar o Xcode 7.0.1, que foi lançado ontem na App Store. Agora tentarei usar essas ferramentas para criar o pdftk.


ATUALIZAÇÃO 3:

O MacPorts está trabalhando no problema de compilação com o PDFtk, esta é uma atualização nesse segmento (Nota: isso não está relacionado ao PDFtk Labs):

Isso ocorre devido à recompilação do libunwind na versão 10.11, usando o Apple Clang 7, produzindo novas otimizações válidas (de acordo com a Apple) que afetam um bug desconhecido no FSF boehm-gc.

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66848

Não espere nenhuma correção da Apple, pois eles não podem tocar no código GPLv3 para examinar o problema do FSF boehm-gc (a menos que eles usem o pacote gcc43, que ainda deve ser GPLv2). O fato de esse problema ser acionado pela recompilação do libunwind é demonstrado pelo fato de que a substituição do libunwind.dylib da 10.10 elimina as falhas boehm-gc e gcj.

Observe que foi arquivado como radr: // 21372179, "a biblioteca boehm-gc da FSF, construída no 10.10, falha em passar nos testes no 10.11", mas foi fechada como um bug do boehm-gc do FSF.


ATUALIZAÇÃO 4:

O MacPorts encontrou uma maneira de resolver o problema de compilação. Esta é uma atualização desse segmento

O Portfile.diff anexado (quando usado com a atualização proposta do gcc5 no # 49227, que corrige o gcj) resolve o problema de compilação com o pdftk.


ATUALIZAÇÃO 5:

Sid Steward no PDF Labs tem uma compilação bem-sucedida, seu feedback:

Uma correção para o MacPorts gcc5 me permitiu criar um pdftk funcional que mescla PDFs no El Capitan. A correção foi adicionada ao ticket para o qual você postou:

MacPorts

Vou continuar a testar completamente esse pdftk antes de colocá-lo em um instalador. Esse processo pode demorar alguns dias.



1
O suporte pago pode fornecer uma resposta mais rápida do PDF Labs.
Hrbrmstr 15/09/2015

2
homebrewé 25% do caminho através de uma compilação. Eu vou deixar você saber como vai.
Hrbrmstr 15/09/2015

1
Avançar na construção @hrbrmstr?
Aaron

1
Pensei no suporte pago do PDF Labs. Se eu receber um email de resposta, tentarei perguntar sobre ele.
Aaron

2
Ótima pergunta @AlexWood. Até onde eu sei, os laboratórios de PDF estão resolvendo o problema, mas não possuem um rastreador de erros público. Se você descobrir o contrário, atualizarei o texto principal de acordo.
Aaron

Respostas:


254

Obrigado pela sua paciência. Testei com êxito este instalador e binário pdftk no OS X 10.11, El Capitan:

https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk_server-2.02-mac_osx-10.11-setup.pkg

Em breve, atualizarei o site do PDF Labs para refletir essa atualização.

Se você já possui o pdftk instalado a partir do instalador antigo, ele deve ser instalado em cima sem problemas - não deve ser necessário remover o pdftk antigo antes de instalar este.

Observe que este instalador / binário ainda não foi testado em versões mais antigas do OS X.

Informe-me como isso funciona para você.

Quero agradecer a Aaron por abrir esse tópico e por trazer atenção útil ao problema que estávamos tendo com as ferramentas de construção. Também quero agradecer à equipe MacPorts por seu trabalho profissional e oportuno!

Cumprimentos-

Sid Steward, PDF Labs


13
existe uma torneira de homebrew que podemos usar para conseguir isso?
Dan2552

1
Obrigado por disponibilizar isso. Ele resolveu o problema que eu estava tendo pdftk. FWIW, dois problemas com o instalador, o primeiro (menor) é que ele não está assinado. A segunda é que ele instala um link no /usr/share/man/man1. Na verdade, estou um pouco surpreso que a Proteção de Integridade do Sistema do El Capitan permita isso, já que eu consideraria um diretório de sistema. O lugar certo para colocar o link da página manual (para espelhar o /usr/local/binlink do executável) é /usr/local/share/man/man1.
Charphacy

10
Deve-se observar que a pdftkpágina inicial ainda não foi atualizada; portanto, mesmo se você instalou a versão 2.02 a partir da página da Web, será necessário reinstalá-la usando o arquivo nesta resposta.
Nip3o 9/11/2015

10
Esta é uma ótima atualização! Você pode atualizar seu site para incluí-lo?
Blairg23

12
Obrigado pela correção e por responder a esta discussão. Eu baixei o PDFtk do seu site hoje para o OSX El Capitan e ele ficou suspenso conforme descrito neste tópico. A versão relatada pelo pdftk --version a partir do download foi 2.02. Acabei de baixar a referência vinculada nesta resposta também relatando a versão 2.02 e ela não parou. Convém verificar a versão do OSX que você está fornecendo em pdflabs.com/tools/pdftk-server
Alexander Rolek

48

Graças a github.com/quantiverge, o pdftk deve ser instalado no brew. Este é testado no OSX Sierra.

Execute o seguinte no terminal.

brew install https://raw.githubusercontent.com/turforlag/homebrew-cervezas/master/pdftk.rb

Atualizado com correções de github.com/zph - obrigado!


Se seguir a rota Homebrew, o acima não funcionou totalmente. Exclua depends_on :macos => :lione substitua @tarball_pathpelo caminho baixado. Depois que o script caiu, o download deve estar em: $HOME/Library/Caches/Homebrew/downloads/. Após os ajustes, deve funcionar bem em High Sierra 10.13.6.
Robert Brisita

11

Atualização 2020

TRABALHADO:

Observe que, para instalá-lo no macOS High Sierra (10.13.5) ou no Mac OS Catalina (10.15) (conforme mencionado por Ivan Kurmanov nos comentários), tive que baixar o pacote em:

https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk_server-2.02-mac_osx-10.11-setup.pkg

Obviamente, ele não permitirá a instalação normal, pois não é baixado da "App Store", portanto, siga as instruções a seguir:

  1. No Finder, localize o aplicativo que você deseja abrir.

  2. Não use o Launchpad para fazer isso. A barra de ativação não permite acessar o menu de atalho.

  3. Clique com a tecla Control pressionada no ícone do aplicativo e escolha Abrir no menu de atalho.

  4. Clique em Abrir.

  5. O aplicativo é salvo como uma exceção às suas configurações de segurança e você pode abri-lo no futuro clicando duas vezes nele, assim como em qualquer aplicativo registrado.

Depois disso, basta seguir o processo de instalação, que é praticamente NEXT - NEXT e aproveitar :)

NÃO FUNCIONOU:

O seguinte comando de fermentação NÃO funcionou para mim:

brew install https://raw.githubusercontent.com/turforlag/homebrew-cervezas/master/pdftk.rb

Deu o seguinte erro:

Falha durante a execução; /usr/bin/xar -xf /xxxx/Library/Caches/Homebrew/downloads/\#\{url_sha256\}--\*saiu com 1.

Boa sorte!


2
O link acima, pdflabs.com/tools/pdftk-the-pdf-toolkit/… parece produzir um pdftk em funcionamento no Mac OS Catalina (10.15).
Ivan Kurmanov

1
@IvanKurmanov obrigado para a entrada, eu vou adicioná-lo à resposta
Learner

Ótimo!! Isso realmente me salvou. Eu estava perto de desistir da gema pdf_forms e procurar outra solução.
killerkiara

7

O Pdftk atualmente não está funcionando para mim no OSX Sierra.

Se você tiver a janela de encaixe instalada em seu sistema, poderá usar minha imagem de janela de encaixe leve :

$ docker run -v $(pwd):/files alpine-pdftk --help

Ainda melhor, basta usar o seguinte script como uma gota na substituição:

#!/usr/bin/env bash
docker run --rm -v $(pwd):/files jottr/alpine-pdftk "$@"

Agora você pode usar o pdftk conforme o esperado: ./pdftk --help


A resposta da @ obh funcionou para mim na Sierra, mas também gosto de ter uma solução docker. Especialmente como o fato de que você usou alpino :)
Henry Schreiner

E se eu quiser executar essa imagem em um contêiner, precisarei atualizar o Dockerfile?
Steven Aguilar

3

trabalho para mim instalar o novo, https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk_server-2.02-mac_osx-10.11-setup.pkg

remova a versão antiga do pdftk; pesquise o pdftk no localizador, vá para o lixo e também faça o pdftk_uninstall.sh.

$ pdftk -version

pdftk 2.02, uma ferramenta útil para manipular documentos PDF Copyright (c) 2003-13 Steward and Lee, LLC - Visite: www.pdftk.com Este é um software livre; veja o código fonte para condições de cópia. Não há garantia, nem mesmo para COMERCIALIZAÇÃO ou ADEQUAÇÃO A UM OBJETIVO ESPECÍFICO.


no OS X Sierra pdftkdyld: Symbol not found: __ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED1Ev Referenced from: /usr/local/bin/pdftk Expected in: /usr/local/bin/../lib/libstdc++.6.dylib in /usr/local/bin/pdftk
Rho Phi


1

Terceira edição: As seguintes não são correções, mas soluções alternativas (`porque às vezes não é possível esperar meses para que as correções cheguem).


Segunda edição: o Coherent PDF Command Line Tools (aka cpdf) é gratuito para uso não comercial e pode ser licenciado para uso comercial. Ele oferece funcionalidade comparável pdtke (pelo menos no meu MacBook Pro) parece funcionar bem no El Capitan.


Editar: esta resposta do StackOverflow informa como usar ghostscriptpara concatenar arquivos, fornecendo, assim, funcionalidades (desajeitadas) semelhantes a "pdftk ... cat output out.pdf".


Para alguns propósitos, o pacote ghostscript--- que é fornecido com distribuições do LaTeX como texlive--- oferece recursos semelhantes (mas menos fáceis de usar) pdftk.

Por exemplo, para extrair as páginas 6-7 de um documento pdf de várias páginas:

gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -dSAFER \
  -dFirstPage=6 -dLastPage=7 \
  "-sOutputFile="${EXTRACTED_FILENAME_HERE}" \
  "${SOURCE_FILENAME_HERE}" ;

O procedimento acima funcionou para mim ... sua milhagem pode variar!

Escusado será dizer que restaurar pdftka funcionalidade completa sob El Capitan seria muito melhor ... pdftké realmente uma utilidade fantástica.


1

Soluções alternativas: Nós levantamos isso para Sid em agosto e ele ainda não o corrigiu, então acho justo dizer que é uma boa ideia procurar alternativas. Por isso, tomamos a iniciativa de enviar algumas primeiras ferramentas que as pessoas podem desfrutar gratuitamente no seguinte repositório:

https://github.com/flexpaper/OSX-PDF-Toolkit

Ele contém scripts fáceis de usar para CAT e BURST. Pretendemos adicionar mais ferramentas daqui para frente. Sinta-se livre para contribuir

Essas novas ferramentas estão usando as bibliotecas OSX nativas e nenhuma dependência de terceiros é necessária. Yay!

Editar: informações adicionadas sobre esta solução alternativa


1
Você é bem-vindo ao enviar essas ferramentas para o repositório. Não deve ser difícil adicionar marcas d'água e concatenação ao adicionar e remover ao mesmo tempo.
FlowPaper Team

1

Você pode acessar um servidor PDFTK em execução no El Capitan se usar o manual de correções de portas junto com os quatro patches fornecidos nos tíquetes Macports # 48528 e # 49227.

A compilação do GCC5 corrigido levou muito tempo na minha máquina. Além disso, parece uma boa idéia nomear as portas locais de forma idêntica às portas originais (por exemplo, gcc5 e pdftk), caso contrário você precisará ajustar os Portfiles.

Também é possível agrupar o binário pdftk resultante junto com suas bibliotecas dinâmicas usando install_name_tool nas bibliotecas binárias e dinâmicas. Consegui rodar o pdftk dessa maneira em duas outras máquinas.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.