ImageMagick / GhostScript - dyld:未加载库:/usr/local/lib/libjbig2dec.0.dylib

Posted

技术标签:

【中文标题】ImageMagick / GhostScript - dyld:未加载库:/usr/local/lib/libjbig2dec.0.dylib【英文标题】:ImageMagick / GhostScript - dyld: Library not loaded: /usr/local/lib/libjbig2dec.0.dylib 【发布时间】:2014-07-11 05:46:11 【问题描述】:

当我在终端中运行convert file.pdfgs 命令时,出现以下错误:

dyld: Library not loaded: /usr/local/lib/libjbig2dec.0.dylib
  Referenced from: /usr/local/bin/gs
  Reason: image not found

我使用自制软件安装了 imagemagick 和 ghostscript:

brew install imagemagick
brew install gs

我已经尝试了相关问题的解决方案,例如重新安装、重新链接等,但我就是无法让它工作。

我也试过了:

brew uninstall libtool
brew install libtool --universal
brew unlink libtool && brew link libtool --force

Homebrew、libtool、imagemagick 和 ghostscript 都是最新的,我正在运行最新版本的 Mavericks。

关于如何解决这个问题的任何想法?

【问题讨论】:

我理解你的痛苦!你试过brew doctor吗? 是的!那也没用 【参考方案1】:

我终于用一个非常简单的解决方案解决了这个问题:

    我尝试了brew install jbig2dec,它返回了Warning: jbig2dec-0.11 already installed

    然后我检查它是否已链接:brew link jbig2dec 返回 Warning: Already linked: /usr/local/Cellar/jbig2dec/0.11

    然后我运行 brew unlink jbig2dec && brew link jbig2dec 重新链接它。

瞧! GhostScript 现在可以工作了。

【讨论】:

【参考方案2】:

您使用的 Ghostscript 是使用共享库编译的(我们不推荐,但打包者非常热衷于)。您的系统上显然没有 JBIG2dec 共享库。据我所知,您有 2 个选择:

1) 找到并安装 Jbig2dec 的共享库版本(你可以从我认为的 ghostscript 站点获取 jbig2dec)。您可能必须自己构建它,我怀疑标准构建是否会创建共享对象。

2) 从源代码重新编译 Ghostscript,使其不使用共享库。

【讨论】:

以上是关于ImageMagick / GhostScript - dyld:未加载库:/usr/local/lib/libjbig2dec.0.dylib的主要内容,如果未能解决你的问题,请参考以下文章

将 ImageMagick 和 GhostScript 与 nuget 一起使用

ImageMagick PDF 委托失败,GhostScript 丢失

奇怪的问题——PHP / ImageMagick / Ghostscript

通过 ImageMagick 或 GhostScript 命令行旋转 .EPS 文件

Imagemagick / ghostscript将裁剪标记添加到pdf

Imagemagick将pptx转换为jpg在ghostscript调用中失败