centos7.9 python3環境(virtualenv)搭建及所遇錯誤

人望山,魚窺荷,真正喜歡想要的,沒有一樣可以輕易得到。


目錄

# 1. 解決版本沖突問題--建議不要跳過(一定要查看軟鏈接是否鏈接正確)

# 2. python3(virtualenv)環境搭建

# 3. virtualenv常用命令

?# 4. 所遇錯誤解析

## 4.1? 遇到 No module named '_ssl'

## 4.2 錯誤"Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-w5?????? kib41y/virtualenvwrapper/"

## 4.3 找不到"pbr"包


# 1. 解決版本沖突問題--建議不要跳過(一定要查看軟鏈接是否鏈接正確)

python3安裝過程在之前的文章:Linux環境安裝Python3-CSDN博客

在安裝之前,先檢查自己的python版本(我使用的python3版本是3.6.1)

python --version

如果是以下 3開頭的版本就跳過此步驟

因為我的虛擬機含有兩個版本,所以牽涉到更換適用版本問題

  • ①查看系統上對應的軟鏈接設置

????????上圖是我修改后的,如果/usr/bin/python指向的是/usr/bin/python3之外的路徑,則需要傷處原有的軟鏈接,讓python的軟鏈接直接指向python3。

  • ②刪除鏈接
rm -rf /usr/bin/python

# rm會提示是否刪除該軟鏈接,直接輸入"y",再"enter"即可

軟鏈接指令:

# 創建軟鏈接
ln -s [源文件] [軟鏈接文件]
# 修改軟鏈接
ln –snf [新的源文件或目錄] [軟鏈接文件]
# 刪除軟連接--系統會提示"是否需要刪除"
rm ./軟鏈接名稱
# 無需系統確認直接刪除軟鏈接
rm –rf ./軟鏈接名稱
  • ③創建新鏈接
ln -s /usr/bin/python3 /usr/bin/python
ln -s /usr/local/python3/bin/pip3  /usr/bin/pip3
  • ④檢查軟鏈接是否指向了最新版本
ls -l /usr/bin/python*

查看若與以上圖片大致相同,則版本沖突解決

# 2. python3(virtualenv)環境搭建

  • ①切換pip源,加快下載速度
mkdir ~/.pip
vim ~/.pip/pip.conf
# 內容:
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
  • ②安裝virtualenv及virtualenvwrpper 及配置

安裝(必須使用Python3的pip去安裝

pip3 install virtualenv virtualenvwrapper

尋找virtualenvwrapper.sh路徑

find / -name virtualenvwrapper.sh

我的結果 /usr/local/python3/bin/virtualenvwrapper.sh (virtualenvwapper的路徑)

尋找virtualenv路徑

find / -name virtualenv

我的結果 /usr/local/python3/bin/virtualenv (virtualenv的路徑)

配置bashrc

vim ~/.bashrc
# 在空白部分添加:
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
# 指定virtualenvwapper的路徑
source /usr/local/python3/bin/virtualenvwrapper.sh
# 剛剛查找的路徑
# 指定virtualenv的路徑
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/python3/bin/virtualenv

如下圖:

使配置文件生效

source ~/.bashrc 

以上python3的環境配置成功!

# 3. virtualenv常用命令

# 虛擬環境列表
workon 或 lsvirtualenv 
# 新建虛擬環境
mkvirtualenv [虛擬環境名稱]	
# 啟動/切換虛擬環境
workon [虛擬環境名稱]	
# 刪除虛擬環境
rmvirtualenv [虛擬環境名稱]	
# 離開虛擬環境
deactivate	

?# 4. 所遇錯誤解析

## 4.1? 遇到 No module named '_ssl'

  • ①檢測系統安裝 OpenSSL
yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc gcc-c++ openssl-devel
  • ② 尋找openssl安裝路徑
find / -name openssl
##我的結果
/usr/lib64/openssl
/usr/include/openssl
/usr/bin/openssl
/etc/pki/ca-trust/extracted/openssl
# 我們需要知道include、lib或者是lib64上一級目錄  
# 我的是/usr  備用(1.3更改路徑時使用)
  • ③ 編輯 ssl配置參數:切換到解壓號的Python目錄
# vim 你的Python目錄/Modules/Setup.dist
## 大約在 209 行   取消這幾行的注釋
### 原參數
SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto## 改成下面的, 下面的路徑/usr取自1.2查找的結果
SSL=/usr  
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib64 -lssl -lcrypto
  • ④? 保存,重新編譯安裝
# 編譯
make
# 安裝
make install

## 4.2 錯誤"Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-w5?????? kib41y/virtualenvwrapper/"

錯誤示例:

  • ?①升級pip版本
python3 -m pip install --upgrade pip
  • ② 如果升級pip后問題仍然存在,嘗試清除pip的緩存并重新安裝包。可以使用以下命令清除緩存
pip3 cache purge

## 4.3 找不到"pbr"包

  • ① 升級setuptools
pip install --upgrade setuptools pip
  • ② 更換pip源--阿里云
pip install --upgrade setuptools pip
  • ③ 在安裝virtualenvwrapper之前安裝pbr
pip3 install pbr
  • ④ 再安裝virtualenvwrapper,回到2的第②步驟

以上python3的環境配置成功!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/37646.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/37646.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/37646.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

惠海 H6246低功耗DC/DC降壓型恒壓芯片60V降3.3V5V12V 藍牙模塊 單片機供電

1.產品描述 H6246是一種內置60V耐壓MOS,支持輸入高達48V的高壓降壓開關控制器,可以向負載提供0.3A的連續電流。H6246支持輸出恒定電壓,可以通過調節VFB采樣電阻來設置輸出電壓,同時支持最大電流限制,可以通過修改CS采…

操作系統期末復習考題二

提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 文章目錄 一、前言🚀🚀🚀二、正文??????三、總結🍓🍓🍓 一、前言🚀🚀&am…

【資源調度】1-何為調度?

導讀:本期是全網最全【資源調度】系列推文的第1期(共50期左右)。我們將對調度的定義與作用、計劃與調度的關系、調度問題的拆解做出詳細介紹,使大家對【資源調度】問題有了一個整體的認識,為后續的內容奠定基礎。 作者1:張哲銘&am…

個人搭建cppreference網站

近日,由于購買的騰訊云服務器要過期了,之前在服務器搭建的cppreference也要重新搭建,故寫下此文章 cppreference的訪問速度也慢,故自己WSL子系統簡單搭鍵一下是個不錯的選擇 環境準備 首先,自己先安裝Nginx,在網上找安裝教程即可下載cppreference網站資源包:https://pan.baidu…

ubuntu 軟鏈接(ubuntu20.04)

ubuntu 軟鏈接(ubuntu20.04) 在Ubuntu和其他Linux系統中,軟鏈接(也稱為符號鏈接)是文件系統中的一個特殊類型的文件,它作為一個引用或指針,指向另一個文件或目錄。軟鏈接類似于Windows中的快捷…

java-快速排序 4

總結 快速排序是一種高 java (String[] args) { int[] array {10, 7, 8, 9, 1, 5, 7, 8}; // 基本快速排序 int[] basicArray array.clone(); basicQuickSort(basicArray, 0, basicArray.length - 1); System.out.println("Basic…

unity ScrollRect裁剪ParticleSystem粒子

搜了下大概有這幾種方法 通過模板緩存通過shader裁剪區域:案例一,案例二,案例三,三個案例都是類似的方法,需要在c#傳入數據到shader通過插件 某乎上的模板緩存方法link,(沒有登錄看不到全文&a…

混沌工程介紹

概念 混沌工程是通過實驗探究系統穩定性的實踐過程,其作戰武器是風險因子,即在系統中引入風險變量來驗證系統對風險的抵抗能力,它的作用是推動系統容錯能力建設、驗證監控告警及時性、提升研發問題排查能力。 混沌工程的工作內容 推動基礎…

RFID固定資產管理系統在企業中的應用與優勢

隨著企業資產規模的不斷擴大和管理復雜性的增加,傳統的資產管理方式已無法滿足企業高效管理的需求。RFID固定資產管理系統憑借其高效、準確、實時的特點,成為企業固定資產管理的新寵。 一、什么是RFID固定資產管理系統 RFID(無線射頻識別&…

磁盤分區工具(fdisk 和 parted)區別及操作筆記

fdisk 和 parted 都是 Linux 系統中用于磁盤分區的工具。 兩者主要區別: 支持的分區表類型: fdisk 主要支持 MBR分區表,MBR分區表支持的硬盤單個分區最大容量為2TB,最多可以有4個主分區。parted 支持 MBR分區表 和 GPT分區表&…

使用AI工具 Baidu Comate 輔助編碼 快速定位修改Bug

一、Baidu Comate 概述 Baidu Comate(百度智能編碼助手)是一款基于文心大模型的新一代編碼輔助工具。它結合了百度多年積累的編程現場大數據和外部優秀開源數據,旨在為用戶提供高質量的編程代碼生成和優化服務。Comate的主要目標是提升編碼效…

人力資源敏捷管理

SБ_Итоговая аттестация_Управление человеческими ресурсами и их развитием в совр. организаци 你好,Вэйдун。當你提交此表單后,擁有者將會看到你的姓名和電子…

幫助某服務業公司制定發展戰略與未來規劃

在集團公司高速發展、業務范圍不斷擴大時,組織往往對公司未來的發展方向感到迷茫,不知道如何進行更好的規劃,找到合適的發展戰略,為企業提供更長遠的發展空間,帶來更多是利益。面對這個問題,華恒智信認為企…

【Hive SQL】時間戳格式化、時間字符串轉換格式化、時區切換(Mysql\Hive SQL\Athena)

文章目錄 一、日期格式化1、時間戳格式化2、日期字符串格式化3、時區切換4、時區列表 一、日期格式化 本文主要記錄 [Mysql\ Hive SQL\ Athena] 時間戳轉換、日期格式化、時區轉換各種數據數據操作 1、時間戳格式化 1、毫秒值轉 yyyy-MM-dd HH:mm:ss Mysql select FROM_UN…

AXI接口簡介

AXI接口,全稱為Advanced eXtensible Interface,是ARM公司推出的一種高性能、低成本、可擴展的高速總線接口。AXI接口是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)高級微控制器總線架構的一部分。2003年發布了…

股票回購(Share Repurchase)是什么?中英雙語介紹

股票回購 中文版 股票回購是指一家金融公司使用其現金儲備從公開市場上回購自身股票的行為。這一操作通常有以下幾個原因: 提升股價:當公司認為其股票被市場低估時,通過減少市場上的流通股數量,可以提升每股的市場價值。優化資…

RK3568平臺(USB篇)UVC驅動分析

一.UVC簡介 攝像頭分為兩類: 1.CAMER接口的攝像頭; 2.USB接口接口的攝像頭; 這里主要介紹usb攝像頭的設備驅動程序。 UVC全稱為USB Video Class,即:USB視頻類,是一種為USB視頻捕獲設備定義的協議標準。…

詳解ApplicationRunner和CommandLineRunner

一、前言 springBoot框架項目,有時候有預加載數據需求——提前加載到緩存中或類的屬性中,并且希望執行操作的時間是在容器啟動末尾時間執行操作。比如筆者工作中遇到了一個預加載redis中的緩存數據,加載為java對象。針對這種場景&#xff0c…

調試解析直播彈幕消息protobuf內容,一步一步教你debug查看PushFrame和Response解碼在哪里

我們知道直播間的彈幕消息是通過websocket傳輸的,而且傳輸的并不是明文數據,而是protobuf消息,至于為什么使用這個protobuf消息,因為它是二進制傳輸,更快更穩,相對于直播這種實時性比較高的要求&#xff0c…

spring-boot-starter-data-redis是否支持reactive響應式編程

開源項目SDK:https://github.com/mingyang66/spring-parent 個人文檔:https://mingyang66.github.io/raccoon-docs/#/ spring-boot-starter-data-redis: 使用傳統的基于阻塞的I/O編程模型,這意味著當你調用Redis操作時&#xff0…