总体而言,wheel 包安装比较简单快捷,而 conda 安装相对复杂,但是可以构建一个隔离环境。
| 安装方式 | 优点 | 不足 |
|---|---|---|
| conda | 提供虚拟环境 | 整个安装包大概在 500M 左右,上传至生产环境比较耗时,且需要校验完整性 |
| wheel | 简单快捷,安装包小 | 无法提供虚拟环境,可能与现有的 Python 环境相冲突 |
7 附录
7.1 pip 常用命令
pip list // 列出当前安装的包
pip freeze packageA // 列出 packageA 的依赖信息
pip wheel packageA // 构建 packageA 的依赖 wheel 包
pip search packageA // 在官方仓库 PyPI 搜索 packageA
7.2 conda 常用命令
- 离线创建虚拟环境
conda create -n py38 python=3.8.13 --offline
- 激活 / 关闭虚拟环境
conda env list //查看所有虚拟环境
conda activate py38 //激活 py38
conda deactivate //退出当前虚拟环境
- 清理并删除 conda 环境:
conda deactivate
conda remove -n offline38 --all
7.3 常见问题处理
Q: conda 离线安装缺失包
PackagesNotFoundError: The following packages are not available from current channels:
- pandas
- python=3.8.13
- numpy
A: 检查下 pkgs_dirs 是否设置正确,以及在该目录下是否有提示信息中的包。不能有任何中间目录,例如设置 conda 的包目录为 pkgs,那么 pkgs/pkgs/numpy 是无法被 conda 找到的。
Q: wheel 包未安装
error: invalid command 'bdist_wheel'
A: 使用 pip 安装 wheel
pip install wheel
Q: future 包缺失
Failed to build future
ERROR: Failed to build one or more wheels
WARNING: Ignoring invalid distribution -ip (d:\program files\python3.7\lib\site-packages)
A: 可以手动收集下 future 包,并上传至离线环境。
pip wheel future
Q: 构建 future whl 包失败
Failed to build future
ERROR: Failed to build one or more wheels
WARNING: Ignoring invalid distribution -ip (d:\program files\python3.7\lib\site-packages)
A: 因 pip 下载、安装未成功而导致的环境异常,进入 pip --version 输出信息中的 site-packages/pip 目录,删除~开头的一些临时文件。
(base) [root@node1 ~]# pip --version
pip 21.2.4 from /root/miniconda3/lib/python3.9/site-packages/pip (python 3.9)
Q: Python API 安装失败
ERROR: Could not find a version that satisfies the requirement dolphindb (from versions: none)
A: 安装环境与 whl 包不匹配导致。可以按如下步骤处理:
- 通过 PyPI 确认是否存在支持当前操作系统(例如 Linux ARM 架构、Mac M1 等)的 DolphinDB API 安装包。若存在,则将该 whl 包下载至本地。
- 通过如下命令查看适合当前系统环境支持的 whl 包后缀。
pip debug --verbose
- 根据 Compatible tags 的显示信息,将 DolphinDB 的 whl 包名修改为适合系统架构的名称。以 Mac (x86_64) 系统为例:安装包名为 “dolphindb-1.30.19.2-cp37-cp37m-macosx_10_16_x86_64.whl”。但查询到 pip 支持的当前系统版本为 10.13,则使用 “10_13” 替换 whl 包名中的 “10_16”。
- 尝试安装更名后的 whl 包。
本文对比了wheel包和conda安装的便捷性,指出wheel安装简便快速,而conda虽然复杂,但能创建隔离环境。同时列举了conda和pip的常用命令,并解答了离线安装、环境匹配等常见问题。
2万+

被折叠的 条评论
为什么被折叠?



