med*_*duz 19 python homebrew pyenv
从2.7.9(非常简单)切换到python 3.4.3之后,我经常希望在与同事共享之前使用python 2.7.9测试我的一些脚本.我正在使用OSX优胜美地平台,其中包含从自制软件编译的所有内容.
情况非常难看(设置PATH
es和PYTHONPATH
每一步) - 直到我发现pyenv很容易做到这一点并且很容易使用自制软件安装.到现在为止还挺好.
但是,现在我正在使用这个版本的python,它不一定能与自制软件一起使用.而且,我发现我可以切换回系统的python,更普遍的是pyenv可以访问:
$ pyenv versions
system
2.7.9
* 3.4.3 (set by /usr/local/var/pyenv/version)
Run Code Online (Sandbox Code Playgroud)
但是我怎样才能为python
自制软件编译的s 添加条目?
mip*_*adi 20
你可以在你的home目录安装pyenv(如pyenv的安装指南中所述),然后在创建一个符号链接~/.pyenv/versions
到$(brew --cellar)/python
:
ln -s $(brew --cellar python)/* ~/.pyenv/versions/
Run Code Online (Sandbox Code Playgroud)
如今Homebrew的工作方式,它将同时提升2.x和3.x.
[2022] homebrew 中的 python3 版本现在采用 python@3.x 格式,因此更新了 shell
#!/bin/bash
pyenv-brew-relink() {
rm -f "$HOME/.pyenv/versions/*-brew"
for i in $(brew --cellar)/python* ; do
for p in $i/*; do
echo $p
ln -s -f $p $HOME/.pyenv/versions/${p##/*/}-brew
done
done
pyenv rehash
}
pyenv-brew-relink
Run Code Online (Sandbox Code Playgroud)
小智 6
重新链接版本的便捷功能:
pyenv-brew-relink() {
rm -f "$HOME/.pyenv/versions/*-brew"
for i in $(brew --cellar python)/*; do
ln -s --force $i $HOME/.pyenv/versions/${i##/*/}-brew;
done
for i in $(brew --cellar python@2)/*; do
ln -s --force $i $HOME/.pyenv/versions/${i##/*/}-brew;
done
}
Run Code Online (Sandbox Code Playgroud)
将之前答案的所有部分拉到一起,形成一个实际工作的环来绑定它们:
pyenv-brew-relink() {
rm -f "$HOME/.pyenv/versions/*-brew"
for i in $(brew --cellar)/python* ; do
ln -s -f "$p" "$HOME/.pyenv/versions/${i##/*/}-brew"
done
pyenv rehash
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5597 次 |
最近记录: |