【问题标题】:Problem installing MySQL-Python on Mac OS 10.14.1在 Mac OS 10.14.1 上安装 MySQL-Python 时出现问题
【发布时间】:2019-04-27 00:32:06
【问题描述】:

我最近升级到 Mac OS Mojave,现在无法安装 MySQL-Python:

pip install MySQL-Python

...
clang -bundle -undefined dynamic_lookup build/temp.macosx-10.13-x86_64-2.7/_mysql.o -L/usr/local/opt/mysql-client/lib -lmysqlclient -lssl -lcrypto -o build/lib.macosx-10.13-x86_64-2.7/_mysql.so
ld: library not found for -lssl
clang: error: linker command failed with exit code 1 (use -v to see invocation)
error: command 'clang' failed with exit status 1

堆栈跟踪显示未找到“ssl”库。我不确定这意味着什么,因为我安装了最新的 XCode 和 OpenSSL。任何建议表示赞赏。

【问题讨论】:

    标签: pip mysql-python macos-mojave


    【解决方案1】:

    我在 MacOS 10.14 上遇到了同样的问题,我可以使用以下步骤解决它:

    /usr/local 的权限更改为allow Homebrew to create links

    sudo chown -R $(whoami) $(brew --prefix)/*
    

    现在权限已修复,重新安装 openssl:

    brew reinstall openssl
    

    运行这两个命令让编译器找到openssl:

    export LDFLAGS="-L/usr/local/opt/openssl/lib"
    export CPPFLAGS="-I/usr/local/opt/openssl/include"
    

    然后,再次尝试安装 MySQL-Python:

    pip install MySQL-Python
    

    【讨论】:

      【解决方案2】:

      更改 /usr/local 的权限以允许 Homebrew 创建链接:

      sudo chown -R $(whoami) $(brew --prefix)/*
      

      现在权限已修复,重新安装 openssl:

      brew reinstall openssl
      

      运行这两个命令让编译器找到openssl:

      export LDFLAGS="-L/usr/local/opt/openssl/lib"
      export CPPFLAGS="-I/usr/local/opt/openssl/include"
      

      然后,再次尝试安装 MySQL-Python:

      pip install MySQL-Python
      

      它适用于带有 python2.7 /Django 1.9.8 的 Mac 10.14.2 和带有 mysql-clinet 的 mysql-server 8;

      【讨论】:

      • 截至 2019 年,这是唯一适用于 Mac 的有效解决方案。 SO上的其他答案表明mysql c连接器的链接/取消链接根本不起作用。谢谢!
      猜你喜欢
      • 2011-07-06
      • 2019-10-18
      • 1970-01-01
      • 2010-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-18
      相关资源
      最近更新 更多