macos - OS X 10.11 上的 PDFtk 服务器

标签 macos pdf homebrew pdftk osx-elcapitan

我已经在 OSX pre 10.11 上使用 PDFTK 服务器一年多了,在命令行上运行命令时没有出现任何问题。

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

我一如既往地从 PDFTK 服务器网站下载的 pkg 进行安装:

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

我还尝试使用 Homebrew 从源代码安装。安装有效,但我得到了相同的结果,命令只是卡在终端中:

Homebrew tap

我已通过两个月前安装测试版时安装的反馈助手应用程序向 Apple 发送了投诉,但没有得到回复。

有人告诉我有关 Apple Feedback Assistant 的信息:

You likely won't ever receive a response. Apple only replies through Feedback Assistant for major bugs of the operating system where they need additional information. It is not a way to obtain support, even less so for a third-party application.

我还联系了 PDF Labs ,包的制作者,没有回应。

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

我在网上搜索了有关可能导致该问题的原因以及如何解决该问题的线索,但没有找到任何具体信息。

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

任何帮助解决根本原因或提供修复的帮助都是值得赞赏的。

<小时/>

更新1:

我收到了 Sid Steward at PDF Labs 的回复:

We have been wrestling with this almost as long as the beta has been out. We are still working on it. There appears to be an incompatibility with one of the (non-Apple) libraries that pdftk uses and OS X 10.11. Presently I am installing yet another update to Apple's developer tools with the hope that it will solve the problem. I will update you with our progress.

<小时/>

更新2:

Sid Steward at PDF Labs再次:

It looks like there are two threads running under pdftk, and that they are deadlocked. That means that each thread is waiting for the other to finish. I'm not an expert here, but that's my impression. Here is a screenshot from Mac's Activity Monitor to illustrate:

enter image description here

The above snapshot is from trying to run the pdftk binary currently on our site on OS X 10.11. The libgcj library noted above comes with pdftk, where the others are OS X libraries.

As I say, I just installed Xcode 7.0.1, which was released yesterday on the App store. I will now attempt to use these tools to build pdftk.

<小时/>

更新3:

MacPorts正在使用 PDFtk 解决构建问题,这是一个 update on that thread (注:这与 PDFtk Labs 无关):

This is due to the recompilation of libunwind in 10.11 using Apple Clang 7 producing new valid optimizations (according to Apple) that tickle an unknown bug in FSF boehm-gc.

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

Don't expect any fixes from Apple as they can't touch the GPLv3 code to look at the FSF boehm-gc problem (unless they used the gcc43 package which should still be GPLv2). That this issue is triggered by the recompilation of libunwind is demonstrated by that fact that substituting the libunwind.dylib from 10.10 eliminates both the boehm-gc and gcj failures.

Note that is was filed as radr://21372179, "the FSF boehm-gc library built on 10.10 fails to pass its tests on 10.11" but closed as being an FSF boehm-gc bug.

<小时/>

更新4:

MacPorts找到了解决构建问题的方法,这是 update on that thread

The attached Portfile.diff (when used with the proposed gcc5 update on #49227 which fixes gcj) solves the build issue with pdftk.

<小时/>

更新5:

Sid Steward at PDF Labs构建成功,他的反馈:

A fix for MacPorts gcc5 allowed me to build a working pdftk that merges PDFs on El Capitan. The fix was added to the ticket you had posted to:

MacPorts

I will proceed to fully test this pdftk before packing it up into an installer. This process could take a couple days.

<小时/>

最佳答案

感谢您的耐心等待。我已在 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 实验室网站以反射(reflect)此更新。

如果您已经从旧安装程序安装了 pdftk,则应该可以毫无问题地在其之上安装 pdftk - 在安装此安装程序之前无需删除旧 pdftk。

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

请告诉我这对您有何作用。

我要感谢 Aaron 打开这个帖子,并为我们在构建工具方面遇到的问题提供了有益的关注。我还要感谢 MacPorts 团队专业且及时的工作!

关于macos - OS X 10.11 上的 PDFtk 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32505951/

相关文章:

pdf - Ghostscript - 将矢量 pdf 转换为光栅 pdf

PHP 5.6.2 + Postgres + Apache 2.4 不适用于 Yosemite

python - Pycharm conda env 不显示通过 pip 安装的包

objective-c - 为什么这些 ARC 对象的行为不一致?

macos - 我的Sublime首选项文件在哪里?

Homebrew:列出从水龙头安装的软件包?

terminal - brew cask install safari-technology-preview 不能在一台电脑上运行,但可以在另一台电脑上运行

xcode - cocoa 中 NSTextField 上的 "rich text"按钮的用途是什么?

html - 如何在 iOS 上假装是打印机,例如应用程序 Save2PDF 或 Adob​​e® CreatePDF?

java - 使用 java 将 PDF 转换为 XPS