首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在FreeBSD监狱中更改默认(二进制) python版本?

如何在FreeBSD监狱中更改默认(二进制) python版本?
EN

Unix & Linux用户
提问于 2017-05-03 14:52:25
回答 1查看 3.9K关注 0票数 3

在监狱里,我沿着python3.6安装了python3.4。两者都是使用pkg install安装的,没有端口。我希望将3.4版本保留一段时间,但将3.6设置为默认版本。

在互联网上找到的答案,比如这一个这一个,要么是自己链接/usr/local/bin/pythonpython3.6 (在升级默认python之后必须做的事情,我想避免的事情;而且无论如何也没有这样的链接);或者是在/etc/make.conf中设置DEFAULT_VERSIONS,这对二进制文件的安装没有任何影响(不过,我已经尝试过了)。

此外,虚拟环境不是一个选项,因为我希望运行uwsgi,为了正确启动,需要系统范围的默认python与其“监视”的python应用程序的python虚拟环境中的默认python匹配。即使我从Django的虚拟环境中开始(提供python3.6),uwsgi也会检测到python3.4是默认的python版本。

找不到是否有任何环境变量丢失。

详情请参阅监狱内部(和虚拟环境):

代码语言:javascript
复制
# printenv 
USER=root
LOGNAME=root
HOME=/root
SHELL=/bin/csh
BLOCKSIZE=K
MAIL=/var/mail/root
PATH=/usr/local/venv/dj1/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/root/bin
TERM=xterm-256color
HOSTTYPE=FreeBSD
VENDOR=amd
OSTYPE=FreeBSD
MACHTYPE=x86_64
SHLVL=1
PWD=/var/log
GROUP=wheel
HOST=dev_web0
EDITOR=vi
LANG=fr_FR.UTF-8
MM_CHARSET=UTF-8
PAGER=more
VIRTUAL_ENV=/usr/local/venv/dj1
EN

回答 1

Unix & Linux用户

发布于 2018-08-18 14:38:39

所有二进制文件都是使用默认设置预构建的,当前的默认Python为3.6。

为了实现您的目标,您可以将所需的Python版本作为二进制安装,然后可以在DEFAULT_VERSIONS/etc/make.conf中设置它,然后使用该版本从端口安装uwsgi。我用Python3.7自动完成这个过程,这不是默认的自动取款机。

或者,您可以测试您的应用程序在Python 3.6下是否正常工作(升级到您的代码应该是最小的,如果有的话),并继续使用默认的二进制文件。

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

https://unix.stackexchange.com/questions/362860

复制
相关文章

相似问题

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