当前位置: 首页 > news >正文

离线安装 Python 包及其全部依赖

第一种方法 使用联网的电脑下载whl文件,然后复制到断网的服务器。

1. 在联网环境中下载包及依赖

使用 pip download 命令下载目标包及其所有依赖到指定目录:

pip download <package_name> -d ./packages
示例:pip download requests -d ./packages

关键参数:

-d ./packages:指定依赖包的下载目录。
--platform:指定目标系统平台(如 win_amd64, manylinux2014_x86_64)。
--python-version:指定 Python 版本(如 3.8)。
--only-binary=:all::仅下载二进制包(避免源码编译问题)。

2. 生成依赖列表(可选)
若需明确依赖版本,可生成 requirements.txt 文件:

pip freeze > requirements.txt
或使用 pipdeptree 生成精确依赖树:

pip install pipdeptree
pipdeptree --packages <package_name> > requirements.txt

3. 将文件转移到离线环境

将下载的 packages 目录(及 requirements.txt)复制到离线机器。

4. 离线安装

在离线环境中使用以下命令安装:

pip install --no-index --find-links=./packages <package_name>
或根据 requirements.txt 安装:

pip install --no-index --find-links=./packages -r requirements.txt

注意事项
平台一致性:
确保下载时的操作系统、架构和 Python 版本与离线环境一致。跨平台需指定 --platform、--python-version 等参数。

二进制依赖:
若环境无编译工具,使用 --only-binary=:all: 避免源码包。

依赖冲突:
复杂依赖建议在虚拟环境中操作,避免污染全局环境。

第二种方法 在联网的电脑上搭建虚拟环境,然后将虚拟环境复制到未联网的服务器上(这个方法方便)

这种方法,需要确保联网的电脑和未联网的电脑cuda一致。

在联网的电脑上安装虚拟环境,执行命令:

conda create --name py39 python=3.9
然后,配置环境。等所需要的安装包均安装后,再将找到虚拟环境,将其压缩。执行命令:

zip py39.zip  -r py39/
将py39.zip传到服务器的miniconda3/envs/文件夹下面。

scp py39.zip user@server:/path/to/miniconda3/envs/
然后解压,执行命令:

cd /path/to/miniconda3/envs/
unzip py39.zip
然后,在命令行使用source命令 添加虚拟环境
使用命令

source activate py39
如果不行,使用绝对路径,执行命令:

source /path/to/miniconda3/bin/activate /path/to/miniconda3/envs/py39
————————————————

本文为博主原创文章,未经博主允许不得转载。 
                        
原文链接:https://blog.csdn.net/hhhhhhhhhhwwwwwwwwww/article/details/146992799

http://www.xdnf.cn/news/745885.html

相关文章:

  • 谷歌Stitch:AI赋能UI设计,免费高效新利器
  • Vue2+Vuex通过数组动态生成store数据(分组模式)
  • 类FNAF游戏后续
  • Constraints and Triggers
  • 零基础一站式端游内存辅助编写教程(无密)
  • 进程间通信(信号量)
  • .net Avalonia 在centos部署
  • LeetCode 高频 SQL 50 题(基础版)之 【聚合函数】部分
  • 5.31 数学复习笔记 22
  • 【计算机网络】子网划分
  • linux nm/objdump/readelf/addr2line命令详解
  • 使用Yolov8 训练交通标志数据集:TT100K数据集划分
  • ICML 2025 Spotlight | 机器人界的「Sora」!让机器人实时进行未来预测和动作执行!
  • Day 41
  • 墨香阁小说阅读前端项目
  • t017-高校实习管理系统 【含材料源码!!!】
  • 【Netty系列】解决TCP粘包和拆包:LengthFieldBasedFrameDecoder
  • 最小二乘准则例题
  • [ElasticSearch] ElasticSearch的初识与基本操作
  • Python实现P-PSO优化算法优化Catboost分类模型项目实战
  • CppCon 2014 学习:ODB, Advanced Weapons and Tactics
  • 浏览器隐私:原理与检测方法
  • 2025年渗透测试面试题总结-匿名[校招]渗透测试工程师(题目+回答)
  • C++ 17 正则表达式
  • Java并发编程实战 Day 1:Java并发编程基础与线程模型
  • MySQL锁机制
  • PDFGear——完全免费且功能强大的PDF处理软件
  • 【Doris基础】Doris中的Replica详解:Replica原理、架构
  • Protos-SIP:经典 SIP 协议模糊测试工具!全参数详细教程!Kali Linux教程!
  • 【多线程初阶】死锁的产生 如何避免死锁