【问题标题】:Trying to Install pytaglib 1.0.3 but Encountering Fatal Error尝试安装 pytaglib 1.0.3 但遇到致命错误
【发布时间】:2015-10-23 09:09:26
【问题描述】:

我正在使用 Python 3.4 并拥有 OS X Yosemite (10.10.4)。根据网站,这个版本的 pytaglib 应该是兼容的。

https://pypi.python.org/pypi/pytaglib

我已经尝试了页面上列出的所有安装方法,但我一直遇到同样的错误。

/usr/bin/clang -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -        O3 -Wall -Wstrict-prototypes -arch i386 -arch x86_64 -g -I/Library/Frameworks/Python.framework/Versions/3.4/include/python3.4m -c src/taglib.cpp -o build/temp.macosx-10.6-intel-3.4/src/taglib.o src/taglib.cpp:268:10: fatal error: 'taglib/tstring.h' file not found
#include "taglib/tstring.h"
     ^
1 error generated.
error: command '/usr/bin/clang' failed with exit status 1
AccuDeveloper-iMac:pytaglib-1.0.3 accudeveloper$ sudo ln -s/Developer/SDKs/MacOSX10.8.sdk MacOSX10.6.sdk

也许它认为我使用的不是我实际使用的操作系统?

【问题讨论】:

    标签: macos python-3.x installation osx-yosemite


    【解决方案1】:

    你有安装taglib吗?

    我在我的机器上遇到了同样的错误,但是通过使用 Homebrew 安装 taglib 能够让它工作:

    brew install taglib
    sudo pip3 install pytaglib
    

    【讨论】:

    • 不,我刚刚放弃了。最终改用 mutagenx 1.24。效果很好。我尝试使用 pip 和 easy_install。也许这就是为什么我无法让它工作的原因,我没有使用 sudo 或 brew。感谢您的回复!
    【解决方案2】:

    在 Linux 上遇到同样的问题,您需要通过下载和解压缩 taglib-N.NN.tar.gz 来安装 taglib,然后按照随附的安装说明进行解压缩和构建,例如

    cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=发布。

    制作

    sudo 安装

    这将为 PIP 成功安装 pytaglib 做好一切准备。 我第一次尝试使用它时遇到了 taglib.so: undefined symbol 错误,因此我使用 cmake 中的选项 -DBUILD_TESTS=on 构建并运行了测试,然后运行:

    检查

    在这一步之后,所有的测试都通过了,一切都在 python 中运行了。

    【讨论】:

      【解决方案3】:

      这是我解决问题的方法 0n OS X 10.11

      首先通过 brew 安装 taglib:

      brew install taglib
      

      然后您需要将包含和库路径传递到 pip install 中,如下所示:

      sudo pip install --global-option=build_ext --global-option="-I/usr/local/include/" --global-option="-L/usr/local/lib"  pytaglib
      

      在那之后你应该好好去。

      【讨论】:

      • 这允许您在没有 sudo 的情况下安装在 virtualenv 中。很好的答案。
      【解决方案4】:

      更新版本 (1.4.1),适用于使用 ma​​cports 的用户。我能够让它在 OS X 10.11 上运行:

      sudo port install taglib

      为了找到所需文件的位置,我使用了:

      sudo port contents taglib

      然后(在 3.5 虚拟环境中):

      (ENV)$sudo pip install --global-option=build_ext --global-option="-I/opt/local/include/" --global-option="-L/usr/local/lib" pytaglib

      它似乎并不关心 --global-option="-L... 是否设置为 /usr/local/lib/opt/local/lib。两个都试了,还是返回“成功安装pytaglib-1.4.1”。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-06-11
        • 1970-01-01
        • 1970-01-01
        • 2022-12-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多