在 macOS Mojave 上用 pyenv 安装 3.6.8 时遇到 zlib not available 错误的解决方法

2019-06-11 05:09:19 +08:00
 Livid

根据 Medium 上这篇文章的分享,用下面的指令可以安装成功。

https://medium.com/@pimterry/setting-up-pyenv-on-os-x-with-homebrew-56c7541fd331

CFLAGS="-I$(brew --prefix readline)/include -I$(brew --prefix openssl)/include -I$(xcrun --show-sdk-path)/usr/include" \
LDFLAGS="-L$(brew --prefix readline)/lib -L$(brew --prefix openssl)/lib" \
PYTHON_CONFIGURE_OPTS=--enable-unicode=ucs2 \
pyenv install 3.6.8
2547 次点击
所在节点    Python
5 条回复
littlewey
2019-06-11 08:06:24 +08:00
我当时刚好也遇到了,用了另一个方法。我记得我也搜到这个方法,但是在我那里不好用。

xcode-select --install

sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /

参考 https://github.com/pyenv/pyenv/issues/1219
写的笔记记录在这: https://note.siwei.info/jupyter-notes/
ysicing
2019-06-11 08:39:07 +08:00
我也遇到了这个问题,重装了 zlib

brew install zlib

cat >> ~/.zshrc <<EOF
# For compilers to find zlib you may need to set:
export LDFLAGS="${LDFLAGS} -L/usr/local/opt/zlib/lib"
export CPPFLAGS="${CPPFLAGS} -I/usr/local/opt/zlib/include"

# For pkg-config to find zlib you may need to set:
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH} /usr/local/opt/zlib/lib/pkgconfig"
EOF

source ~/.zshrc
819916913
2019-06-11 10:30:19 +08:00
好奇 macOS_SDK_headers_for_macOS_10.14 这个是什么东西,上次装完这个,重启系统就挂了,格式化磁盘重装系统才行。。。
mckelvin
2019-06-11 15:52:43 +08:00
更通用的办法时 pyenv install 前按 `brew info zlib` 的提示设置下几个变量

```
$ brew info zlib | grep expor
export LDFLAGS="-L/usr/local/opt/zlib/lib"
export CPPFLAGS="-I/usr/local/opt/zlib/include"
export PKG_CONFIG_PATH="/usr/local/opt/zlib/lib/pkgconfig"
```
gladuo
2019-06-11 18:25:43 +08:00
@littlewey 好像我也是类似的操作

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/572653

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX