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

基于Kali linux 安装pyenv及简单使用方法及碰到的问题

系统环境

Kali 版本: Kali GNU/Linux Rolling
内核版本: 6.0.0-kali3-amd64
系统架构: x86_64
内核发布时间: #1 SMP PREEMPT_DYNAMIC Debian 6.0.7-1kali1 (2022-11-07)

一、安装 pyenv:

curl https://pyenv.run | bash

二、将 pyenv 添加到 shell 配置(在 ~/.bashrc 或 ~/.zshrc 中添加):

# pyenv 配置
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
export PYTHON_BUILD_MIRROR_URL="https://mirrors.huaweicloud.com/python/"
# 设置华为的镜像源
export PYTHON_BUILD_MIRROR_URL_SKIP_CHECKSUM=1
eval "$(pyenv virtualenv-init -)"# 初始化 pyenv
if command -v pyenv 1>/dev/null 2>&1; theneval "$(pyenv init -)"
fi

修改完文件记得使其生效

source ~/.zshrc  或 source ~/.bashrc

注:如何判断使用~/.bashrc 还是 ~/.zshrc

echo $SHELL
#根据输出结果判断:
#如果输出显示 /bin/bash → 则是使用 ~/.bashrc
#如果输出显示 /bin/zsh → 则是使用 ~/.zshrc

三、基本使用方法

1、查看可用的 Python 版本

# 查看所有可用版本
pyenv install --list# 如:查看可用的 3.8 序列版本
pyenv install --list | grep "3.8." | grep -v "dev\|a\|b\|rc" | tail -10

2、安装 Python 版本(自动)

# 安装特定版本
pyenv install 3.8.12
pyenv install 3.9.7
pyenv install 3.10.2
# 安装最新版本
pyenv install 3.11:latest# 安装完验证查看已安装的版本
pyenv versions
# 查看当前使用的版本
pyenv version

2、安装 Python 版本(手动下载安装方法)

# 1. 手动下载
cd ~
wget https://mirrors.huaweicloud.com/python/3.8.12/Python-3.8.12.tar.xz# 2. 创建缓存目录
mkdir -p ~/.pyenv/cache# 3. 移动到缓存目录
mv Python-3.8.12.tar.xz ~/.pyenv/cache/# 4. 安装
pyenv install 3.8.12

注:在安装 Python 3.8.18 时碰到的问题,如缺少必要的系统库

pyenv install 3.8.18 
Downloading Python-3.8.18.tar.xz...
-> https://mirrors.huaweicloud.com/python/3.8.18/Python-3.8.18.tar.xz
Installing Python-3.8.18...
Traceback (most recent call last):File "<string>", line 1, in <module>File "/home/arthur/.pyenv/versions/3.8.18/lib/python3.8/bz2.py", line 19, in <module>from _bz2 import BZ2Compressor, BZ2Decompressor
ModuleNotFoundError: No module named '_bz2'
WARNING: The Python bz2 extension was not compiled. Missing the bzip2 lib?
Traceback (most recent call last):File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'readline'
WARNING: The Python readline extension was not compiled. Missing the GNU readline lib?
Traceback (most recent call last):File "<string>", line 1, in <module>File "/home/arthur/.pyenv/versions/3.8.18/lib/python3.8/ssl.py", line 98, in <module>import _ssl             # if we can't import it, let the error propagate
ModuleNotFoundError: No module named '_ssl'
ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?Please consult to the Wiki page to fix the problem.
https://github.com/pyenv/pyenv/wiki/Common-build-problemsBUILD FAILED (Kali 2022.4 using python-build 2.6.8)Inspect or clean up the working tree at /tmp/python-build.20251006220940.383985
Results logged to /tmp/python-build.20251006220940.383985.logLast 10 log lines:LD_LIBRARY_PATH=/tmp/python-build.20251006220940.383985/Python-3.8.18 ./python -E -m ensurepip \$ensurepip --root=/ ; \
fi
Looking in links: /tmp/tmp6vu3i2o_
Processing /tmp/tmp6vu3i2o_/setuptools-56.0.0-py3-none-any.whl
Processing /tmp/tmp6vu3i2o_/pip-23.0.1-py3-none-any.whl
Installing collected packages: setuptools, pipWARNING: The scripts pip3 and pip3.8 are installed in '/home/arthur/.pyenv/versions/3.8.18/bin' which is not on PATH.Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed pip-23.0.1 setuptools-56.0.0

解决方法:

# 在 Kali Linux 上安装编译依赖
sudo apt update
sudo apt install -y \make build-essential libssl-dev zlib1g-dev \libbz2-dev libreadline-dev libsqlite3-dev \wget curl llvm libncursesw5-dev xz-utils \tk-dev libxml2-dev libxmlsec1-dev libffi-dev \liblzma-dev \libgdbm-dev libgdbm-compat-dev \libnss3-dev libreadline6-dev

查看及清除安装的版本

# 查看缓存和版本
pyenv versions
# 清除已安装的版本
pyenv uninstall 版本号

3、设置 Python 版本(优先级:shell > local > global)

# 设置全局默认版本
pyenv global 3.9.7# 为当前目录设置本地版本(创建 .python-version 文件)
pyenv local 3.8.12# 为当前 shell 会话设置临时版本
pyenv shell 3.10.2

四、实际运用操作流程示例

1、创建新项目

# 1. 创建项目目录
mkdir my-new-project
cd my-new-project# 2. 安装所需的 Python 版本(如果还没有)
pyenv install 3.10.2
# 下载好后进行验证是否成功
pyenv versions# 3. 创建专属虚拟环境
pyenv virtualenv 3.10.2 my-new-project-env# 4. 设置为项目本地环境(专属虚拟环境)
pyenv local my-new-project-env# 5. 安装项目依赖
pip install -r requirements.txt

2、使用git下载项目

# git下载克隆项目后
git clone https://github.com/username/my-web-app.git
cd my-web-app# 创建相同的虚拟环境
pyenv virtualenv 3.9.18 my-web-app-env
pyenv local my-web-app-env# 安装依赖
pip install -r requirements.txt

注:pyenv local my-web-app-env 这一步可能会出现没有权限的报错,如
在这里插入图片描述
解决方法:

# 下载的目录没有权限的报错,需把将目录所有权改为当前用户
sudo chown -R $USER:$USER ~/my-web-app-env

五、简单常用命令汇总

# 安装和管理
pyenv install --list          # 列出可安装版本
pyenv install 3.9.7          # 安装特定版本
pyenv uninstall 3.9.7        # 卸载版本# 版本切换
pyenv versions               # 列出已安装版本
pyenv global 3.9.7          # 设置全局版本
pyenv local 3.8.12          # 设置本地版本
pyenv shell 3.10.2          # 设置shell版本# 虚拟环境
pyenv virtualenv 3.9.7 myenv # 创建虚拟环境
pyenv activate myenv         # 激活虚拟环境
pyenv deactivate             # 停用虚拟环境
pyenv virtualenvs            # 列出虚拟环境
http://www.dtcms.com/a/454556.html

相关文章:

  • 旅游网站开发背景意义没网站怎么做app
  • 【论文笔记】VisionPAD: A Vision-Centric Pre-training Paradigm for Autonomous Driving
  • phpcms 安装官网的教程更换域名后网站图片还是无法显示php网站超市源码下载
  • 【开题答辩全过程】以 爱家家具销售网为例,包含答辩的问题和答案
  • STM32G474单片机开发入门(五)ADC详解及实战
  • 网站重做 影响wordpress 页面 html
  • 页网站设计wordpress 繁体
  • 有哪些网站上可以做试卷视频网站怎么搭建
  • 网站开发需多少钱重庆医疗网站建设
  • 网站制作公司的宣传海报wordpress调用热门文章
  • 丹徒网站建设多少钱wordpress附件数据库
  • 怎样做网站上的语种链接哪个网站可以做图交易平台
  • 门户网站建设美丽装修设计网站哪个最好
  • 学校网站建设开题报告书怎么在网站上加qq
  • 免费做网站网站有人哪些qq推广群号码大全
  • 【Spring框架】——原理篇
  • 网站建设问题分类和排除方法分析建设一个网站的工作方案
  • 网站设计例子wordpress固定链接html
  • 营销型网站的建站步骤是什么意思推广引流网站
  • 计算机-网络基础
  • 企业cms建站免费制作个人网页
  • UVa 237 Monitoring Wheelchair Patients
  • Linux I2C 子系统
  • 中国建设银行官网站预约纪念币网站关键词优化到首页后怎么做
  • 专业营销型网站建设费用货源网
  • Windows 11基本操作
  • 建设行业个人信息网站哔哩哔哩免费安装
  • 广州网站app制作公司c 网站做微信收款功能
  • 扒完网站代码之后怎么做模板安卓app开发需要学什么
  • 上海800做网站桂林昨晚发生的新闻