如题,,安装过程中总是报缺库安装失败,,有没有安装二进制版本的方法??
1
panda1001 2020-03-18 18:03:47 +08:00 via Android
上 docker?
|
2
ysc3839 2020-03-18 18:57:42 +08:00
> 为什么是从源码编译安装呢
因为 pyenv 设计就是自动编译安装。 > 能不能安装编译好的二进制 使用包管理配合二进制源安装,或者自行搜索编译好的二进制。 |
3
Tink 2020-03-18 18:59:08 +08:00 via iPhone
virtualenv ?
|
4
Kobayashi 2020-03-18 20:36:13 +08:00 via Android
|
5
ipwx 2020-03-18 20:42:01 +08:00
try anaconda
|
6
zhuangzhuang1988 2020-03-18 21:46:43 +08:00
看下 https://lucumr.pocoo.org/talks/
里面的 binarypython 这部分 http://dev.pocoo.org/~mitsuhiko/binarypython.pdf 里面提到了二进制发布时需要考虑多少情况 |
7
chenqh 2020-03-18 22:21:57 +08:00
借个楼,国内 pyenv 的 python 有加速镜像码?
|
8
Cooky 2020-03-19 00:13:34 +08:00 via Android
conda
|
10
wuwukai007 2020-03-19 16:08:05 +08:00
|
15
frostming 2020-03-21 16:00:58 +08:00
@chenqh
1. 下载 tar.xz 包到本地目录下 2. 在该目录启动一个本地静态文件服务器 python3 -m http.server 8000 3. 另起一个窗口,设置环境变量 export PYTHON_BUILD_MIRROR_URL="http://localhost:8000" 把源改成本地服务器 4. pyenv install 3.8.2 这时会下载不了卡住,停掉就可以 5. 看服务器打的日志的 access log,会看到它请求的文件名 6. 把 tar.xz 文件名改成上面看到的地址,重新 pyenv install,就 OK 了 |
17
lcj2class 2020-03-25 16:02:13 +08:00 1
|
18
xingheng 2020-03-27 04:52:36 +08:00
因为 python 的很多库是依赖系统库环境的,比如 sqlite,python3 内置了 sqlite3,但是需要依赖原生的 sqlite 驱动,而驱动层是基于 c 的,不同 arch 环境下编译的最终产物不一样。
为了不需要分别为各个不同 arch 环境而编译出多个版本,pyenv 选择了直接源码编译,虽然使用者可能碰到很多依赖的问题,但是从通用性上讲会比二进制更好。 |