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

使用 python 源码搭建 conda 环境

今天需要使用 python 2.6.8 的环境,发现 conda 设置成清华源后,没有旧版本了。所以打算从官网上下载一份 python 进行安装,
结果发现,conda 不能直接安装离线包(也可能我没找到方法),经过一番尝试终于解决了,这里记录一下。

下载并解压后,在源码目录执行

./configure -h

可以看到一堆配置参数,大部份我们都不需要关心。为了避免新编译的 python 污染系统已有的环境变量,这里只需要设置 --prefix 参数(即编译出的 python 存放位置,注意:这个参数需要绝对路径,我是在当前目录下新建了一个文件夹:268)。了解了这些依次执行下面的命令即可:

./configure --prefix /xxx/xxx/268
make
conda create -n py268 --offline

执行完上面的命令,会在 268 文件夹下生成 python 程序及创建一个 conda 的 py268 环境,但是现在的 py268 还是走的系统默认的 python 环境,需要把 268 文件夹下的内容复制到 conda 的 xxx/envs/py268 文件夹下,然后执行下面的命令安装 py268 的 pip:

conda activate py268
python -m ensurepip --upgrade

然后重启命令行,在 py268 环境下使用 pip 就是 py268 自己的 pip 了,而不是使用默认的。

另外,安装好后,我发现 anaconda 的环境中还有历史版本(可以通过 conda search python 查看),所以把 anaconda 的配置文件(通过 conda config --show 获得的)也一并贴在这里,主要是里面的 channels 配置。

conda config:

add_anaconda_token: True
add_pip_as_python_dependency: True
aggressive_update_packages:- ca-certificates- certifi- openssl
allow_conda_downgrades: False
allow_cycles: True
allow_non_channel_urls: False
allow_softlinks: False
always_copy: False
always_softlink: False
always_yes: None
anaconda_upload: None
auto_activate_base: True
auto_stack: 0
auto_update_conda: True
bld_path: 
changeps1: True
channel_alias: https://conda.anaconda.org
channel_priority: flexible
channels:- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/- defaults
client_ssl_cert: None
client_ssl_cert_key: None
clobber: False
conda_build: {}
create_default_packages: []
croot: /home/xxx/anaconda3/conda-bld
custom_channels:pkgs/main: https://repo.anaconda.compkgs/r: https://repo.anaconda.compkgs/pro: https://repo.anaconda.com
custom_multichannels:defaults: - https://repo.anaconda.com/pkgs/main- https://repo.anaconda.com/pkgs/rlocal: 
debug: False
default_channels:- https://repo.anaconda.com/pkgs/main- https://repo.anaconda.com/pkgs/r
default_python: 3.8
default_threads: None
deps_modifier: not_set
dev: False
disallowed_packages: []
download_only: False
dry_run: False
enable_private_envs: False
env_prompt: ({default_env}) 
envs_dirs:- /home/xxx/anaconda3/envs- /home/xxx/.conda/envs
error_upload_url: https://conda.io/conda-post/unexpected-error
execute_threads: 1
extra_safety_checks: False
force: False
force_32bit: False
force_reinstall: False
force_remove: False
ignore_pinned: False
json: False
local_repodata_ttl: 1
migrated_channel_aliases: []
migrated_custom_channels: {}
non_admin_enabled: True
notify_outdated_conda: True
offline: False
override_channels_enabled: True
path_coxxxict: clobber
pinned_packages: []
pip_interop_enabled: False
pkgs_dirs:- /home/xxx/anaconda3/pkgs- /home/xxx/.conda/pkgs
proxy_servers: {}
quiet: False
remote_backoff_factor: 1
remote_connect_timeout_secs: 9.15
remote_max_retries: 3
remote_read_timeout_secs: 60.0
repodata_fns:- current_repodata.json- repodata.json
repodata_threads: None
report_errors: None
restore_free_channel: False
rollback_enabled: True
root_prefix: /home/xxx/anaconda3
safety_checks: warn
sat_solver: pycosat
separate_format_cache: False
shortcuts: True
show_channel_urls: True
signing_metadata_url_base: https://repo.anaconda.com/pkgs/main
solver_ignore_timestamps: False
ssl_verify: True
subdir: linux-64
subdirs:- linux-64- noarch
target_prefix_override: 
track_features: []
unsatisfiable_hints: True
unsatisfiable_hints_check_depth: 2
update_modifier: update_specs
use_index_cache: False
use_local: False
use_only_tar_bz2: False
verbosity: 0
verify_threads: 1
whitelist_channels: []
http://www.lryc.cn/news/144103.html

相关文章:

  • dart 学习之 异步操作
  • 《Flink学习笔记》——第二章 Flink的安装和启动、以及应用开发和提交
  • 网易新财报:游戏稳、有道进、云音乐正爬坡
  • Docsify的评论系统gitalk配置过程
  • HarmonyOS/OpenHarmony(Stage模型)卡片开发应用上下文Context使用场景二
  • 数字货币量化交易平台
  • 2022 ICPC 济南 E Identical Parity (扩欧)
  • 【BUG事务内消息发送】事务内消息发送,事务还未结束,消息发送已被消费,查无数据怎么解决?
  • 数据分析作业四-基于用户及物品数据进行内容推荐
  • 在腾讯云服务器OpenCLoudOS系统中安装svn(有图详解)
  • C语言日常刷题5
  • 【LeetCode-中等题】73. 矩阵置零
  • 本地部署 FastGPT
  • 软件工程(十八) 行为型设计模式(四)
  • Socket通信与WebSocket协议
  • 新KG视点 | Jeff Pan、陈矫彦等——大语言模型与知识图谱的机遇与挑战
  • 详解过滤器Filter和拦截器Interceptor的区别和联系
  • List常用的操作
  • Android studio APK切换多个摄像头(Camera2)
  • ChatGPT 对教育的影响,AI 如何颠覆传统教育
  • Spring(九)声明式事务
  • java中用HSSFWorkbook生成xls格式的excel(亲测)
  • 做平面设计一般电脑可以吗 优漫动游
  • 设计模式备忘录+命令模式实现Word撤销恢复操作
  • Linux centos7 bash编程小训练
  • 创作2周年纪念日-特别篇
  • 【UE5】用法简介-使用MAWI高精度树林资产的地形材质与添加风雪效果
  • 兼容AD210 车规级高精度隔离放大器:ISO EM210
  • R语言常用数组函数
  • 前端开发之Element Plus的分页组件el-pagination显示英文转变为中文