I have to use Python 3.6.5
because of a library I use that keeps showing bugs on 3.7.0
(TensorFlow).
I installed Python 3.6.5
using Homebrew as follows:
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb
If I install vim
using Homebrew:
brew install vim --with-python
it updates Python to 3.7.0
. So I end up having a working vim but broken TensorFlow code. What I did was switching back to 3.6.5
after installing vim
:
brew switch python 3.6.5_1
And I ended up having a working TensorFlow code but a broken vim
:
dyld: Library not loaded: /usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/Python
Referenced from: /usr/local/bin/vim
Reason: image not found
[1] 83442 abort vim
Best Answer
To solve this with
homebrew
, you can temporarily backdatehomebrew-core
and set theHOMEBREW_NO_AUTO_UPDATE
variable to hold it in place:I don't recommend permanently backdating homebrew-core, as you will miss out on security patches, but it is useful for testing purposes.
A more robust approach, would be to use
pyenv
as suggested in the comment by @Dustin Wheeler. You can also extract old versions of homebrew formulae into your own tap (tap_owner/tap_name) using thebrew extract
command: