OS X 10.11上的PDFtk服务器

Aar*_*ron 158 pdf macos homebrew pdftk osx-elcapitan

我一直在使用PDFTKServer OSX pre 10.11超过一年没有任何问题在命令行上运行命令.

安装OSX 10.11 beta后,我无法再PDFTK在命令行上运行任何Server命令.它不会抛出任何错误,我尝试执行的所有命令都会无限期地挂起.

PDFTK一直从服务器网站下载的pkg安装:

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

我也尝试使用Homebrew从源代码安装.安装工作,但我得到相同的结果,命令只挂在终端:

Homebrew水龙头

我已经通过他们的反馈助手应用程序向Apple发送了投诉,该应用程序在两个月前安装测试版时安装,没有响应.

我被告知Apple反馈助理:

您可能永远不会收到回复.Apple仅通过反馈助手回复操作系统中需要其他信息的主要错误.它不是获得支持的一种方式,对第三方应用程序来说更是如此.

我还联系了包装的制造商PDF Labs,但没有回复.

MacPorts上,他们遇到了OS X 10.11上的构建问题,这是否意味着PDFtk和10.11在软件级别存在兼容性问题?

我在网上搜索了一些线索,了解可能导致问题的原因以及解决方法,但没有找到任何实际问题.

在OS X上,我不知道如何确定升级后是否存在权限或路径甚至是Java问题.

任何有助于解决根本原因或提供修复的帮助都表示赞赏.


更新1:

我从PDF实验室的Sid Steward那里听到了回复:

只要测试版已经发布,我们就一直在努力解决这个问题.我们仍在努力.似乎与pdftk使用的一个(非Apple)库和OS X 10.11不兼容.目前我正在为Apple的开发人员工具安装另一个更新,希望它能解决问题.我会告诉你我们的进展.


更新2:

Sid Steward再次访问PDF实验室:

看起来有两个线程在pdftk下运行,并且它们已经死锁.这意味着每个线程都在等待另一个线程完成.我不是这里的专家,但那是我的印象.以下是来自Mac的Activity Monitor的截图,用于说明:

在此输入图像描述

上面的快照来自于尝试在OS X 10.11上运行我们网站上当前的pdftk二进制文件.上面提到的libgcj库带有pdftk,其他的是OS X库.

正如我所说,我刚刚安装了Xcode 7.0.1,它于昨天在App商店发布.我现在将尝试使用这些工具来构建pdftk.


更新3:

MacPorts正在使用PDFtk解决构建问题,这是该线程更新(注意:这与PDFtk Labs无关):

这是因为在10.11中使用Apple Clang 7重新编译了libunwind,产生了新的有效优化(根据Apple),它在FSF boehm-gc中发现了一个未知的错误.

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

不要指望Apple有任何修复,因为他们无法触及GPLv3代码来查看FSF boehm-gc问题(除非他们使用的gcc43包应该仍然是GPLv2).这个问题是由重新编译libunwind引发的,这一事实表明,从10.10替换libunwind.dylib会消除boehm-gc和gcj失败.

请注意,这是作为radr:// 21372179提交的,"基于10.10构建的FSF boehm-gc库无法通过10.11的测试",但作为FSF boehm-gc错误关闭.


更新4:

MacPorts找到了解决构建问题的方法,这是该线程更新

附加的Portfile.diff(与#49227上提出的修复gcj的gcc5更新一起使用时 )解决了pdftk的构建问题.


更新5:

PDF实验室的Sid Steward成功构建了他的反馈:

MacPorts gcc5的一个修复程序允许我构建一个可以在El Capitan上合并PDF的工作pdftk.该修复程序已添加到您发布到的故障单中:

MacPorts的

在将其打包到安装程序之前,我将继续对此pdftk进行全面测试.此过程可能需要几天时间.


小智 248

感谢您的耐心等待.我已经在OS X 10.11,El Capitan上成功测试了这个pdftk安装程序和二进制文件:

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

我将尽快更新我们的PDF实验室网站以反映此更新.

如果你已经从旧的安装程序安装了pdftk,那么它应该安装在它上面没有问题 - 在安装这个之前不需要删除旧的pdftk.

请注意,此安装程序/二进制文件尚未在旧版本的OS X上进行测试.

请告诉我这是如何为您服务的.

我要感谢Aaron打开这个帖子,并对我们使用构建工具所遇到的问题给予了有益的关注.我还要感谢MacPorts团队的专业和及时的工作!

最好的祝福-

Sid Steward,PDF实验室

  • 我们可以使用自制的水龙头来获取这个吗? (12认同)
  • 感谢您的修复和响应此线程.我今天从你的网站上下载了OST El Capitan的PDFtk,就像这个帖子中所描述的那样.pdftk报告的版本 - 下载的版本是2.02.我刚刚在此响应中下载了链接引用,也报告了版本2.02,但它没有挂起.您可能需要在https://www.pdflabs.com/tools/pdftk-server/上查看您提供的OSX版本. (12认同)
  • 应该注意的是,`pdftk`主页尚未更新,因此即使您已从网页安装了2.02版,您也需要使用此答案中的文件重新安装它. (10认同)
  • 这是一个很棒的更新!您可以更新您的网站以包含它吗? (10认同)
  • 这也适用于High Sierra 10.13 (4认同)

小智 46

感谢github.com/quantiverge,pdftk应该可以在brew下安装.这个在OSX Sierra中进行了测试.

在终端中运行以下命令.

brew install https://raw.githubusercontent.com/turforlag/homebrew-cervezas/master/pdftk.rb
Run Code Online (Sandbox Code Playgroud)

  • 在 catalina 10.15.7 中不起作用:“brew extract”或“brew create”和“brew tap-new”在 GitHub 上的点击中创建公式文件。:无效用法:pdftk 公式的非校验和下载不支持来自任意 URL 的文件!` (5认同)

Lea*_*ner 21

2020 更新

工作:

请注意,为了在macOS High Sierra (10.13.5)Mac OS Catalina (10.15)上安装它(如 Ivan Kurmanov 在评论中提到的),我必须从以下位置下载软件包:

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

当然,它不会让您正常安装,因为它不是从“App Store”下载的,因此请使用以下说明:

  1. 在 Finder 中,找到要打开的应用。

  2. 不要使用 Launchpad 执行此操作。Launchpad 不允许您访问快捷菜单。

  3. 按住 Control 键点按应用程序图标,然后从快捷菜单中选取“打开”。

  4. 单击打开。

  5. 该应用程序被保存为您的安全设置的例外,您可以在将来通过双击它来打开它,就像您可以打开任何已注册的应用程序一样。

之后只需完成安装过程,这几乎是 NEXT - NEXT 并享受 :)

不工作:

下面酿造的命令并没有为我工作:

brew install https://raw.githubusercontent.com/turforlag/homebrew-cervezas/master/pdftk.rb
Run Code Online (Sandbox Code Playgroud)

它给出了以下错误:

执行时失败;/usr/bin/xar -xf /xxxx/Library/Caches/Homebrew/downloads/\#\{url_sha256\}--\*以 1 退出。

祝你好运!

  • 上面的链接 https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk_server-2.02-mac_osx-10.11-setup.pkg 似乎在 Mac OS Catalina (10.15) 上生成了一个工作的 pdftk。 (3认同)

jot*_*ttr 7

Pdftk目前在OSX Sierra上不适用于我.

如果您的系统上安装了docker,则可以使用我的轻量级docker镜像:

$ docker run -v $(pwd):/files alpine-pdftk --help
Run Code Online (Sandbox Code Playgroud)

更好的是,只需使用以下脚本作为替代品:

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

现在您可以按预期使用pdftk: ./pdftk --help