【问题标题】:OS X Lion, ImageMagick and RMagic - how to install?OS X Lion、ImageMagick 和 RMagic - 如何安装?
【发布时间】:2012-12-08 13:57:05
【问题描述】:

我正在尝试安装 ImageMagick 和 RMagic,因为它们在 OS X Lion 升级后无法工作。 我跑的时候

brew install imagemagick

我收到了错误

Error: You must `brew link libpng' before imagemagick can be installed

但是当我按照错误消息中所述运行brew link libpng 时,我会得到:

Error: You must `brew link libpng' before imagemagick can be installed
Radek-Macs-MacBook-Pro-3:sharelock-staging radek$ brew link libpng
Linking /usr/local/Cellar/libpng/1.5.13... Warning: Could not link libpng. Unlinking...

Error: Could not symlink file: /usr/local/Cellar/libpng/1.5.13/include/pnglibconf.h
/usr/local/include/pnglibconf.h may already exist.
/usr/local/include may not be writable.

如何解决这个问题?我两天都在解决 RMagic 的问题,但没有成功……这简直是一场噩梦……

【问题讨论】:

    标签: ruby-on-rails ruby osx-lion homebrew rmagick


    【解决方案1】:

    我遇到了同样的问题:

    $ brew unlink jpeg 
    $ brew link --overwrite jpeg
    $ brew unlink libpng
    $ brew link --overwrite libpng 
    $ brew install imagemagick
    

    然后 pow 我启动并运行了 imagemagick

    【讨论】:

      【解决方案2】:

      我在 Mountain Lion 中尝试使用 brew 安装 libpng 时发生了这种情况。

      sudo chown <user>:wheel /usr/local/lib/pkgconfig/
      

      为我解决了这个问题。

      【讨论】:

        【解决方案3】:

        我之前收到过来自brew 的投诉。在我的情况下,它是通过取消链接然后重新链接来解决的;也就是说,运行brew unlink "libname",然后运行brew link "libname",将“libname”替换为未正确链接的软件名称;在你的情况下,“libpng”。

        【讨论】:

        • 如果我运行brew unlink libname,我会得到Error: No such keg: /usr/local/Cellar/libname。我该如何解决这个问题?
        • 抱歉,我想这不是很清楚。用您在链接时遇到问题的库的名称替换“libname”,在您的情况下为 libpng。我的问题不在于 libpng,它是一个不同的库,但它是相同的错误消息,并且可能以相同的方式解决。我会更新我的答案以澄清。
        • 感谢您的留言马克。请参阅 OP,当我尝试 link 库时,我收到 OP 中提到的错误。当我运行brew unlink libpng 时,我收到消息Linking /usr/local/Cellar/libpng/1.5.13... Warning: Could not link libpng. Unlinking......我现在可以尝试什么?
        • 您是否运行了 unlink 命令?因为您显示的错误消息只能由 link 命令给出。
        • 这个想法是有时图书馆的链接不好,您需要先删除它们才能正确链接它;因此:unlink,然后是link
        【解决方案4】:

        检查/usr/local/include目录的文件权限:

        $ ls -ld /usr/local/include

        这应该显示您是否具有创建指向该目录的符号链接的正确权限。一个简单的检查方法是:

        $ touch /usr/local/include/mydummytestfile &amp;&amp; rm /usr/local/include/mydummytestfile

        如果前面的命令成功,那么你确实有访问权限。另一方面,如果您收到错误:

        touch: /usr/local/include/mydummytestfile: Permission denied,那么您将需要使用sudo 命令运行brew 命令:

        $ sudo brew link libpng

        您需要提供密码。希望这可以帮助。

        【讨论】:

        • 是的,touch /usr/local/include/mydummytestfile &amp;&amp; rm /usr/local/include/mydummytestfile 成功了,但是现在呢?
        猜你喜欢
        • 1970-01-01
        • 2011-11-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-29
        相关资源
        最近更新 更多