首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pyenv构建失败(使用python-build 20180424的Fedora 28 )

pyenv构建失败(使用python-build 20180424的Fedora 28 )
EN

Stack Overflow用户
提问于 2018-08-29 12:43:56
回答 1查看 632关注 0票数 1

我正在尝试安装python 3.7.0,以下是构建失败后日志文件中的一部分消息:

代码语言:javascript
复制
......

Python build finished successfully!
The necessary bits to build these optional modules were not found:
_dbm                  _gdbm                 _tkinter           
_uuid                 nis                                      
To find the necessary bits, look in setup.py in detect_modules() for the module's name.


The following modules found by detect_modules() in setup.py, have been
built by the Makefile instead, as configured by the Setup files:
_abc                  atexit                pwd                
time                                                           

running build_scripts
creating build/scripts-3.7
copying and adjusting /tmp/python-build.20180829114540.17502/Python-3.7.0/Tools/scripts/pydoc3 -> build/scripts-3.7
copying and adjusting /tmp/python-build.20180829114540.17502/Python-3.7.0/Tools/scripts/idle3 -> build/scripts-3.7
copying and adjusting /tmp/python-build.20180829114540.17502/Python-3.7.0/Tools/scripts/2to3 -> build/scripts-3.7
copying and adjusting /tmp/python-build.20180829114540.17502/Python-3.7.0/Tools/scripts/pyvenv -> build/scripts-3.7
changing mode of build/scripts-3.7/pydoc3 from 664 to 775
changing mode of build/scripts-3.7/idle3 from 664 to 775
changing mode of build/scripts-3.7/2to3 from 664 to 775
changing mode of build/scripts-3.7/pyvenv from 664 to 775
renaming build/scripts-3.7/pydoc3 to build/scripts-3.7/pydoc3.7
renaming build/scripts-3.7/idle3 to build/scripts-3.7/idle3.7
renaming build/scripts-3.7/2to3 to build/scripts-3.7/2to3-3.7
renaming build/scripts-3.7/pyvenv to build/scripts-3.7/pyvenv-3.7
Creating directory /home/gio/.pyenv/versions/3.7.0/bin
if test "no-framework" = "no-framework" ; then \
    /usr/bin/install -c python /home/gio/.pyenv/versions/3.7.0/bin/python3.7m; \
else \
    /usr/bin/install -c -s Mac/pythonw /home/gio/.pyenv/versions/3.7.0/bin/python3.7m; \
fi
if test "3.7" != "3.7m"; then \
    if test -f /home/gio/.pyenv/versions/3.7.0/bin/python3.7 -o -h /home/gio/.pyenv/versions/3.7.0/bin/python3.7; \
    then rm -f /home/gio/.pyenv/versions/3.7.0/bin/python3.7; \
    fi; \
    (cd /home/gio/.pyenv/versions/3.7.0/bin; ln python3.7m python3.7); \
fi
if test -f libpython3.7m.a && test "no-framework" = "no-framework" ; then \
    if test -n "" ; then \
        /usr/bin/install -c -m 555  /home/gio/.pyenv/versions/3.7.0/bin; \
    else \
        /usr/bin/install -c -m 555 libpython3.7m.a /home/gio/.pyenv/versions/3.7.0/lib/libpython3.7m.a; \
        if test libpython3.7m.a != libpython3.7m.a; then \
            (cd /home/gio/.pyenv/versions/3.7.0/lib; ln -sf libpython3.7m.a libpython3.7m.a) \
        fi \
    fi; \
    if test -n ""; then \
        /usr/bin/install -c -m 555  /home/gio/.pyenv/versions/3.7.0/lib/; \
    fi; \
else    true; \
fi
zsh:9: parse error near `fi'
make: *** [Makefile:1173: altbininstall] Error 1

在构建失败行之后没有进一步的信息:

我安装pyenv是通过

代码语言:javascript
复制
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

并且已经安装了所有给定的要求。

代码语言:javascript
复制
sudo yum install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel \
openssl-devel xz xz-devel libffi-devel

也是

代码语言:javascript
复制
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshenv
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshenv
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.zshenv

但每次都会收到上面的错误消息。我该如何让它工作呢?

EN

回答 1

Stack Overflow用户

发布于 2018-09-01 13:38:44

问题就解决了。

不知何故,我的/bin/sh已经与/usr/bin/zsh建立了符号链接。将/bin/sh链接回/usr/bin/bash后,Pyenv安装已修复。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52069624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档