手动本地安装conda的第三方库

背景

最近在将自己电脑上的深度学习环境迁移到另一台电脑上,但由于网络限制,在下载一些第三方库时会异常缓慢,故此时采用手动安装方式。

步骤

1.准备安装包

安装包可从官网下载,或直接拷贝已有虚拟环境中的包

【补充】关于虚拟环境中包的存储路径

打开cmd,输入 conda config --show 查看 pkgs_dirs属性的值

bash 复制代码
C:\Users\XXX>conda config --show
...
pkgs_dirs:
  - D:\program\anaconda\pkgs     # 安装包存储在第一个路径
  - C:\Users\XXX\.conda\pkgs
  - C:\Users\XXX\AppData\Local\conda\conda\pkgs
...

一般而言,每次通过conda下载的包都会安装到 pkgs_dirs配置中的第一个路径下。

2.拷贝至conda环境的pkgs目录

获取到安装包后,将其拷贝至目标环境的pkgs目录下(查找pkgs目录的方法和步骤1是一样的)。

比如,我这里将 pytorch-1.12.0-py3.8_cuda11.3_cudnn8_0.tar.bz2 这个包拷贝到了 D:\program\anaconda\pkgs>

3.通过命令行进行安装

3.1进入目标环境

首先切换到需安装的虚拟环境中(比如我这里的虚拟环境是py38)

bash 复制代码
conda activate py38

3.2切换至包所在目录

然后切换到 pkgs_dirs 所在的目录下,切换后的状态如下:

bash 复制代码
(py38) D:\program\anaconda\pkgs>

3.3使用命令行安装

输入 conda install --use-local 包名,进行安装,如下所示:

bash 复制代码
(py38) D:\program\anaconda\pkgs>conda install --use-local pytorch-1.12.0-py3.8_cuda11.3_cudnn8_0.tar.bz2

Downloading and Extracting Packages


Downloading and Extracting Packages

Preparing transaction: done
Verifying transaction: done
Executing transaction: done

3.4检查是否安装成功

通过 pip list 命令查看当前环境下已安装的包,若能显示包名及对应的版本号,则说明安装成功

bash 复制代码
(py38) D:\program\anaconda\pkgs>pip list
...
torch                     1.12.0
...

图示原理(可选看)

conda中的 pkgs_dirs 与 envs_dirs 这两个配置的作用可以用下图来表示:

  • 三个环境:base、py36、py38
  • 2个依赖包:python、torch
  • pkgs_dirs 可以理解为 【存储&安装】 所有安装包的目录(发挥着缓存的功能),在某一环境中下载包之前,会检查pkgs_dirs 中是否已安装过相同版本的包,如果有则直接将现成的包加入到环境中。
相关推荐
文洪涛2 天前
VS Code Python “第一次运行失败 / 先执行 python 再激活 Conda” 问题定位与解决
开发语言·python·conda
schinber2 天前
Python包管理工具全景指南:从pip到现代化工具实战
python·conda·pip·uv
colourmind3 天前
记录一次vscode debug conda python 使用报错问题排查
vscode·python·conda
Studying 开龙wu3 天前
Linux 系统中配置国内源下载时使用pip install 和conda install哪个快?
linux·conda·pip
KevinShi_BJ3 天前
Conda env & python 的包管理器
conda
Echo_NGC22374 天前
【传统JSCC+Deep JSCC】联合信源信道编码完全指南
人工智能·python·深度学习·神经网络·conda·无人机·jscc
多想和从前一样4 天前
2025【最新】基于conda环境从头安装MMSegmentation
conda·pip·mmsegmentation
NicoNicoleNi5 天前
Anaconda安装和环境配置实践记录
python·conda
sulikey6 天前
Conda下载依赖/包报错:Connection broken: IncompleteRead(...)
conda·connectbroken·incompleteread·网络中断
kkoral6 天前
基于MS-Swift 为 Qwen3-0.6B-Base 模型搭建可直接调用的 API 服务
python·conda·fastapi·swift