Where communities thrive

  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
Repo info
    Burak Can Kahraman
    @denekthanyjana_twitter As best practice if you are using zsh as default, let's try to solve the problem through zsh and not bash. You won't be spawning bash just for pyenv.

    Okay @burakcank, zsh it is then.
    I restarted my mac as you said.
    Here's the output of my $ echo $PATH


    As you can see /usr/local/bin is there which is the location of pyenv. Still having the same problem.

    19 replies
    Angus Hollands
    This message was deleted
    Niraj Lama
    Hi I have followed every step from github
    but when I try to see my python version it is still in the default of the mac os
    I am using macOs Catalina
    Is it just for me or everyone
    2 replies

    Hi, I am a new pyenv user and got a bit stuck. I posted this (https://bit.ly/3dQjnpF) on stackoverflow but did not get a response. Maybe someone here could help me? Everything works fine until I try to activate the virtual environment, it then says

    Failed to activate virtualenv.

    Perhaps pyenv-virtualenv has not been loaded into your shell properly.
    Please restart current shell and try again.

    I think my problem is twofold. I changed from bash to zsh mid way and I think I managed to make a big mess of the zshrc file. It currently looks like I shared in StackOverflow.

    Is this the place to ask this question?


    1 reply
    Jim Kopps

    When I try to install python using 'pyenv install 3.8.0" (I tried many versions, but lets go with python 3.8.0) it fails almost immediately and the only thing in my log is:

    curl: (56) OpenSSL SSL_read: error:1408F119:SSL routines:ssl3_get_record:decryption failed or bad record mac, errno 0

    Both OpenSSL and curl are up to date and I have everything installed that I would need to build python. Please let me know if there is any additional information that would be helpful. I have looked through the issues on the pyenv git page. I also asked the question on stack overflow, but have gotten no response. Does anyone have any thoughts or solution?


    1 reply
    I am using POP OS 20.04

    Hi, I have followed every installation steps written at github.
    But I have failed to install miniconda3-4.7.12 to SINGLE CPU VM of Ubuntu Server 20.04. The installation stopped without CPU usage.

    The installation log is here: https://gist.github.com/gotoloop1/44f54acdd08e9e063e3f42e12751748d
    Then I stopped build with Ctrl+C. The additional logs is here: https://gist.github.com/gotoloop1/06a711576e53ba36db99ddb727fd50ca
    The content of /tmp/python-build.20200601134947.1248 is here: https://gist.github.com/gotoloop1/f6575cb727af8f1db03703997fd5508e

    This problem does not happen when I install miniconda3-4.7.10 or miniconda3-latest. It also does not happen when I increase the VM CPU.

    Same problem happens on Docker.
    Use this Dockerfile( https://gist.github.com/gotoloop1/8b7f44c5f141bb61674e344aceac6bce ) and run docker build . --cpuset-cpus="0", I got same error.

    Is this new bug, or already known?
    I have looked the pyenv issues page, but could not find same bug.


    Philippe Ombredanne
    @techtheory that sounds like an installation issue. Curl installation may be damaged? or some man in the middle of sorts?
    Daniel Watson

    Hey folks, I think my pyenv installation has been borked past the point of return. What's the best way to scrub it from my machine and start again?

    I'm guessing brew uninstall, then delete all environment folders called "
    Remove all references to my path and then starting again

    Philippe Ombredanne
    and check your dot files too
    Daniel Watson
    Cool, I deleted everything and started fresh, but I'm still in the same place

    which pyenv returns: pyenv () { local command command="${1:-}" if [ "$#" -gt 0 ] then shift fi case "$command" in (activate | deactivate | rehash | shell) eval "$(pyenv "sh-$command" "$@")" ;; (*) command pyenv "$command" "$@" ;; esac }

    And it's driving me nuts

    I removed everything Python on Mac ( except /System/Libraries/blahhh/Python2.XXX which you should never, ever remove)

    brew uninstalled pyenv, pyenv-virtualenv, python, pip the lot!

    Philippe Ombredanne
    Daniel Watson
    Yeah it's really killing my buzz hahaha I'm tearing my hair out trying to figure out why and where it's calling to arrive at that answer!
    So for context, I reinstalled pyenv, pyenv-virtualenv and dependencies so I started fresh. pyenv itself looks like it's working as expected, but that which command just confuses the hell out of me, which makes me assume it's not completely working
    I have upgrade to ubuntu 20 and there is something strange with pyenv. When I run it with pyenv I have core dump. When I run with bash -c pyenv it works. I have removed all python2 from my linux and have delete and install the latest pyenv from master. would be happy if someone can give me a hint how to investigate

    Hi all. I'm trying to downgrade sqlite3.sqlite_version for Python 3.4 to run some tox tests, and am having no luck. I'm on Ubuntu 20.04. I was able to successfully upgrade it to 3.32.1 with:

    PYTHON_CONFIGURE_OPTS="LD_RUN_PATH=/home/linuxbrew/.linuxbrew/Cellar/sqlite/3.32.1/lib LDFLAGS=-L/home/linuxbrew/.linuxbrew/Cellar/sqlite/3.32.1/lib CPPFLAGS=-I/home/linuxbrew/.linuxbrew/include" pyenv install 3.4.8

    When I try to install an old formula for 3.25 or 3.24, I always wind up with 3.31.1 (the Ubuntu system version of libsqlite3-dev). I can't downgrade libsqlite3-dev since it's a dependency for a bunch of other system packages. I'm assuming it's my poor understanding of the flags I'm attempting to pass to the compilation process, but I don't know for sure.

    If I drop the CPPFLAGS variable altogether, I'm able to get it to not compile _sqlite3 at all, but when I point it to the value from snippet above, or to /include in separately compiled sqlite3 3.25/3.24, or any of the other combinations I've tried, I still end up with 3.31.1.

    Thanks in advance for any light you can shed on this, even if it's just pointing to helpful resources.

    1 reply
    I'd like to use poetry along with pyenv, and noticed something that might confuses me. When pyenv virtualenv creates a new virtualenv, it places it in the versions directory, and then creates a symlink into the python version that it was created with. This isn't usual with the tools I've used in the past. I would like to understand the benefit of the symlink so I can make an informed decision about bringing poetry into the picture. What is the purpose of that link? Could I just manually create the link myself, or does it matter if it exists? TIA!
    Jerry Morrison

    Hello everybody! I'm installing Python 3.8.3 on centos 3.10.0-957.27.2.el7.x86_6 but it fails to import readline. This is a shared compute cluster where I can't run a package installer or sudo. The key build message is:

    *** WARNING: renaming "readline" since importing it failed: /home/groups/blah.../lib/libreadline.so.8: undefined symbol: UP

    The 3rd and 4th repetitions of that warning in the build log, it's followed with:

    INFO: Could not locate ffi libs and/or headers

    and stuff I don't understand about "necessary bits to build these optional modules".

    The build command looks like

    CFLAGS="-I/home/groups/blah.../include -I/share/software/user/open/sqlite/3.18.0/include" \
    LDFLAGS="-L/home/groups/blah.../lib -L/home/groups/blah.../lib64" \
    LD_LIBRARY_PATH="/home/groups/blah.../lib:/home/groups/blah.../lib64:$LD_LIBRARY_PATH" \
    SSH=/home/groups/blah... \
    CONFIGURE_OPTS="--enable-optimizations" \
    PYTHON_CONFIGURE_OPTS="--enable-shared" \
    pyenv install -f -v 3.8.3

    This is after compiling libressl, readline, and libffi from source and installing them into that blah... directory.

    Any suggestions? TIA!

    Lano P

    if I am using macos and installed pyenv with brew, do I need to set PYENV_ROOT, when I am in nvim and do :checkhealth it says that peen_root is not set.

    I know documentatioan says when installing with home-brew, starting with #3 ("Add pyenv init to your shell) but that doesn’t set the ROOT_PYENV.

    Sebastian Gniazdowski
    Hi. I'm getting the BUILD FAILED message and pyenv global {the-version} says that it's not installed, however the build log says that Python build finished successfully! and that it performed the installation and also installed the setuptools. What can be the reason of the error message and of the build being invisible to pyenv? The complete build log is here: http://sprunge.us/2XBBe0
    Sebastian Gniazdowski
    Ok, it's solved: my openssl was too old for that python version, but an older one installed OK.
    Jerry Morrison
    I found that pyenv install 3.8 is a lot more fragile than 2.7.
    (1) It requires a lot of libraries built and listed in a bunch of environment variables including CPPFLAGS and LDFLAGS (which are not colon-separated path lists), and PKG_CONFIG_PATH, LD_LIBRARY_PATH, LIBRARY_PATH (which are colon-separated path lists).
    (2) Needed libraries include libffi and xz even if the build messages don't mention them.
    (3) Some "necessary bits" like _uuid don't seem necessary. Does it fall back to Python code for those?
    Hi! I'm trying to compile a version of python with a specific version of openssl
    but everytime after installation when i run python -c "import ssl; print(ssl.OPENSSL_VERSION)"
    i get different version from what i specified with CFLAGS/LDFLAGS. eg:
    I missing something? :/
    After this i try install with: pyenv install -v 3.6.2
    The version that i try to use is: 1.0.2g
    root@47d430be99fa:~/Projects# openssl version -a
    OpenSSL 1.0.2g  1 Mar 2016
    built on: reproducible build, date unspecified
    platform: linux-x86_64
    options:  bn(64,64) rc4(16x,int) des(idx,cisc,16,int) idea(int) blowfish(idx) 
    OPENSSLDIR: "/usr/local/ssl"
    Stéphane Juban
    Hi everyone,
    Why is there no python 3.7.8 on pyenv ? It is one of the recommended version with Heroku. Same with 3.8.5.
    I have pyenv 1.2.19
    Thanks !
    Philippe Ombredanne
    3.7.8 is available alright. You need to upgrade
    @StephaneJuban ^
    $ pyenv --version
    pyenv 1.2.19-6-gbdfed51
    Best is to use the git version if you want to stay current
    Stéphane Juban
    Thanks :)
    Ok anyway 1.2.20 is out now so brew upgrade pyenv did it
    Philippe Ombredanne
    Chris Snow
    I've installed several pyenv python versions inside a docker image, however when I try to use (e.g. pyenv local 2.7.18), I'm getting pyenv: version 'x.x.x' not installed:
    theia@51a0efa33dd1:/home/project$ ls -l /home/theia/.pyenv/versions/
    total 24
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:49 2.7.18
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:50 3.5.9
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:50 3.6.11
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:50 3.7.8
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:50 3.8.5
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:51 3.9-dev
    theia@51a0efa33dd1:/home/project$ ls -l /home/theia/.pyenv/versions/2.7.18/
    total 20
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:52 bin
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:21 include
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:21 lib
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:49 man
    drwxr-xr-x 1 theia theia 4096 Aug  6 11:21 share
    theia@51a0efa33dd1:/home/project$ pyenv local 2.7.18
    pyenv: version `2.7.18' not installed
    Chris Snow
    Any idea where I need to start looking to figure out this issue?
    Chris Snow

    It seems the issue was that tab completion in the shell was replacing ~ with /~, e.g.

    theia@6c1a368dc9db:/home/project$ ls \~

    Putting the full path to the .pyenv folder in my .bashrc seems to have fixed it.


    echo 'export PYENV_ROOT="~/.pyenv"' >> ~/.bashrc


    echo 'export PYENV_ROOT="/home/theia/.pyenv"' >> ~/.bashrc
    Philippe Ombredanne
    @snowch Did you check the manylinux/ cibuildwheel docker image(s) from Python PyPA team proper?
    Hey folks; I apologize if this is a question you get quite often, but I've run into a strange issue when trying to install any version of python3≤3.5.0. It seems that on MacOS these older python3 versions cannot find openSSL. These errors go away if I try to install 3.6.0 so I'm wondering if something under the hood changed between these versions, which doesn't play nice with how OSX handles linking of openSSL.
    This seems to have started around early July but I'm not 100% sure.
    Aaron Ciuffo
    I have three different Macs, all running 10.15. On two I've managed to build python 3.8.5 with tkinter; it works great. On the third, I cannot for the life of me figure out what's going wrong. I've used these very reliable instructions from github on the two working Macs, but I keep getting X11 errors when building on the third. Any ideas?
    I'm having an interesting issue: I'm getting a 404 when attempting to dowload the lates PyPy:
    ❯ pyenv install -vvv pypy3.6-7.3.1
    /var/folders/dl/f3h10k2x10l88zy9wdjtbd600000gn/T/python-build.20200908191719.97207 ~/PycharmProjects/typic
    Downloading pypy3.6-v7.3.1-osx64.tar.bz2...
    -> https://bitbucket.org/pypy/pypy/downloads/pypy3.6-v7.3.1-osx64.tar.bz2
    curl: (22) The requested URL returned error: 404 
    error: failed to download pypy3.6-v7.3.1-osx64.tar.bz2
    BUILD FAILED (OS X 10.15.6 using 0000000000)
    I'm on the latest version of pyenv (1.2.20). Not entirely sure why pyenv would be pointing to bitbucket for this, it looks as though pypy is hosted on downloads.python.org