CentOS7.9安裝Python 3.10.11并包含OpenSSL1.1.1t

1. 安裝編譯 Python 所需的依賴包

yum -y install gcc make zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel wget


2. 安裝 OpenSSL 1.1.1 或更新版本
自定義路徑安裝的 OpenSSL 1.1.1 不會影響系統原有的 OpenSSL 1.0.2,二者可共存
# 下載 OpenSSL 1.1.1t 源碼包

wget https://www.openssl.org/source/openssl-1.1.1t.tar.gz

如果官網下載麻煩可直接用網盤下載:

鏈接: https://pan.baidu.com/s/1YFs5UC6nUh5ktCCk9Ln-Mg?pwd=nmnn
提取碼: nmnn?

# 解壓源碼包

tar -zxvf openssl-1.1.1t.tar.gz

# 進入解壓后的目錄

cd openssl-1.1.1t

# 配置編譯選項

./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared zlib

# 編譯并安裝,make -j$(nproc) 利用處理器多核編譯加快編譯速度。

make -j$(nproc)
make install

# 更新系統庫路徑

echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
ldconfig

3. 創建 Python 安裝目錄(路徑根據實際情況修改)

mkdir -p /data/py/Python3


4. 下載 Python 3.10.11 源碼包

wget https://www.python.org/ftp/python/3.10.11/Python-3.10.11.tgz


5. 解壓 Python 源碼包

tar -zxvf Python-3.10.11.tgz
cd Python-3.10.11


6. 配置 Python 編譯選項

./configure --prefix=/data/py/Python3 --with-openssl=/usr/local/openssl

7. 編譯并安裝 Python

make -j$(nproc)
make install


8. 設置環境變量

echo 'export PATH=/data/py/Python3/bin:$PATH' >> /etc/profile
source /etc/profile##如果不想取代系統原有的python3版本,可以通過添加軟連接方式,與系統自帶python3共存:
cd /usr/bin
ln -s /data/py/Python3/bin/python3.10 python310
ln -s /data/py/Python3/bin/pip3.10 pip310


9. 驗證 Python 安裝

python3 --version#如果是軟連接共存方式,則執行如下代碼
python310  --version


10. 驗證 SSL 模塊是否成功安裝

python3 -c "import ssl; print(ssl.OPENSSL_VERSION)"#如果是軟連接共存方式,則執行如下代碼
python310  -c "import ssl; print(ssl.OPENSSL_VERSION)"


11. 配置 pip 源(以阿里云源為例)

mkdir -p ~/.pip
cat << EOF > ~/.pip/pip.conf
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/[install]
trusted-host = mirrors.aliyun.com
EOF


12. 更新 pip 到最新版本

pip3 install --upgrade pip#如果是軟連接共存方式,則執行如下代碼
pip310 install --upgrade pip

13. 測試安裝第三方庫

pip3 install requests
python3 -c "import requests; print(requests.__version__)"#如果是軟連接共存方式,則執行如下代碼
pip310 install requests
python310 -c "import requests; print(requests.__version__)"

按照以上步驟操作,你就可以在 CentOS 7.9 系統上成功安裝 Python 3.10.11 并包含 OpenSSL 支持,同時配置好 pip 源以便后續使用。

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

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

相關文章

qt事件過濾與傳遞機制

當點擊 QLabel 時&#xff0c;正常情況下并不會直接觸發 MyWidget 的 mousePressEvent 函數&#xff0c;原因在于事件的傳遞機制和事件過濾器的存在。下面詳細分析這個過程&#xff1a; 事件傳遞機制 在 Qt 里&#xff0c;事件的傳遞是從子控件往父控件冒泡的。不過&#xff…

ubuntu 安裝ollama后,如何讓外網訪問?

官網下載linux版本&#xff1a;https://ollama.com/download/linux 1、一鍵安裝和運行 curl -fsSL https://ollama.com/install.sh | sh 2、下載和啟動deepseek-r1大模型 ollama run deepseek-r1 這種方式的ollama是systemd形式的服務&#xff0c;會隨即啟動。默認開啟了 …

kotlin與MVVM結合使用總結(三)

1. MVVM 架構詳細介紹及源碼層面理解 整體架構 MVVM&#xff08;Model - View - ViewModel&#xff09;架構是為了解決視圖和數據模型之間的耦合問題而設計的。它通過引入 ViewModel 作為中間層&#xff0c;實現了視圖和數據的分離&#xff0c;提高了代碼的可維護性和可測試性…

A系統使用iframe嵌套B系統時登錄跨域問題!

我這邊兩個項目都是獨立的&#xff0c;問題是做了跨域配置之后點擊登錄接口調用成功但是頁面沒有跳轉進去 顯示以下報錯 這個錯誤明確指出了問題的核心原因&#xff1a;由于跨站點Cookie設置未正確聲明SameSiteNone&#xff0c;導致瀏覽器攔截了Cookie。這是現代瀏覽器&#x…

消息唯一ID算法參考

VUE // src/utils/idGenerator.js/*** 雪花算法風格的 ID 生成器**//*** 前綴 w代表web端,m代表手機端**/ const DEFAULT_PREFIX = w; const DEFAULT_TOTAL_LENGTH = 16; const CHARS

《WebGIS之Vue零基礎教程》(5)計算屬性與偵聽器

1 計算屬性 1) 什么是計算屬性 :::info 計算屬性就是基于現有屬性計算后的屬性 ::: 2) 計算屬性的作用 計算屬性用于對原始數據的再次加工 3) 案例 :::warning **需求** 實現如下效果 ::: 使用表達式實現 html Document 請輸入一個字符串: 反轉后的字符串: {{msg.split(…

洞悉 NGINX ngx_http_access_module基于 IP 的訪問控制實戰指南

一、模塊概述 ngx_http_access_module 是 NGINX 核心模塊之一&#xff0c;用于基于客戶端 IP 地址或 UNIX 域套接字限制訪問。它通過簡單的 allow/deny 規則&#xff0c;對請求進行最先匹配原則的過濾。與基于密碼&#xff08;auth_basic&#xff09;、子請求&#xff08;auth…

數據中臺-數據質量管理系統:從架構到實戰

一、數據質量管理系統核心優勢解析? ? (一)可視化驅動的敏捷數據治理? 在數據治理的復雜流程中,Kettle 的 Spoon 圖形化界面堪稱一把利器,為數據工程師們帶來了前所未有的便捷體驗。想象一下,你不再需要花費大量時間和精力去編寫冗長且復雜的 SQL 腳本,只需通過簡單…

數據分析之 商品價格分層之添加價格帶

在分析貨品數據的時候&#xff0c;我們會對商品的價格進行分層匯總&#xff0c;也叫價格帶&#xff0c;?? 一、價格帶的定義?? ??價格帶&#xff08;Price Band&#xff09;??&#xff1a;將商品按價格區間劃分&#xff08;如0-50元、50-100元、100-200元等&#xff…

Maven 依賴范圍(Scope)詳解

Maven 依賴范圍&#xff08;Scope&#xff09;詳解 Maven 是一個強大的項目管理工具&#xff0c;廣泛用于 Java 開發中構建、管理和部署應用程序。在使用 Maven 構建項目時&#xff0c;我們經常需要引入各種第三方庫或框架作為項目的依賴項。通過在 pom.xml 文件中的 <depe…

vue3實現v-directive;vue3實現v-指令;v-directive不觸發

文章目錄 場景&#xff1a;問題&#xff1a;原因&#xff1a;? 場景&#xff1a; 列表的操作列有按鈕&#xff0c;通過v-directive指令控制按鈕顯隱&#xff1b;首次觸發了v-directive指令&#xff0c;控制按鈕顯隱正常&#xff1b;但是再次點擊條件查詢后&#xff0c;列表數…

數據結構【樹和二叉樹】

樹和二叉樹 前言1.樹1.1樹的概念和結構1.2樹的相關術語1.3樹的表示方法1.4 樹形結構實際運用場景 2.二叉樹2.1二叉樹的概念和結構2.2二叉樹具備以下特點&#xff1a;2.3二叉樹分類 3.滿二叉樹4.完全二叉樹5.二叉樹性質6.附&#xff1a;樹和二叉樹圖示 前言 歡迎蒞臨姜行運主頁…

css面板視覺高度

css面板視覺高度 touch拖拽 在手機端有時候會存在實現touch上拉或者下拉的樣式操作 此功能實現可以參考&#xff1a; https://blog.csdn.net/u012953777/article/details/147465162?spm1011.2415.3001.5331 面板視覺高度 前提需求&#xff1a; 1、展示端分為兩部分&…

【Linux系統】詳解Linux權限

文章目錄 前言一、學習Linux權限的鋪墊知識1.Linux的文件分類2.Linux的用戶2.1 Linux下用戶分類2.2 創建普通用戶2.3 切換用戶2.4 sudo&#xff08;提升權限的指令&#xff09; 二、Linux權限的概念以及修改方法1.權限的概念2.文件訪問權限 和 訪問者身份的相關修改&#xff08…

路由器的基礎配置全解析:靜態動態路由 + 華為 ENSP 命令大全

&#x1f680; 路由器的基礎配置全解析&#xff1a;靜態&動態路由 華為 ENSP 命令大全 &#x1f310; 路由器的基本概念&#x1f4cd; 靜態路由配置&#x1f4e1; 動態路由協議&#xff1a;RIP、OSPF、BGP&#x1f5a5; 華為 ENSP 路由器命令大全&#x1f539; 路由器基本…

詳細圖解 Path-SAM2: Transfer SAM2 for digital pathology semantic segmentation

? 背景動機 數字病理中的語義分割&#xff08;semantic segmentation&#xff09;是非常關鍵的&#xff0c;比如腫瘤檢測、組織分類等。SAM&#xff08;Segment Anything Model&#xff09;推動了通用分割的發展&#xff0c;但在病理圖像上表現一般。 病理圖像&#xff08;Pa…

初識Redis · 哨兵機制

目錄 前言&#xff1a; 引入哨兵 模擬哨兵機制 配置docker環境 基于docker環境搭建哨兵環境 對比三種配置文件 編排主從節點和sentinel 主從節點 sentinel 模擬哨兵 前言&#xff1a; 在前文我們介紹了Redis的主從復制有一個最大的缺點就是&#xff0c;主節點掛了之…

HTTP header Cookie 和 Set-Cookie

RFC 6265: HTTP State Management Mechanismhttps://www.rfc-editor.org/rfc/rfc6265 Set-Cookie 響應頭 服務器使用 Set-Cookie 響應頭向客戶端&#xff08;通常是瀏覽器&#xff09;發送 Cookie。 基本格式&#xff1a; Set-Cookie: <cookie名稱><cookie值>;…

【Unity完整游戲開發案例】從0做一個太空大戰游戲

1.實現飛機移動控制 // 這個腳本實現控制飛機前后移動&#xff0c;方向由鼠標控制 //1.WS控制前后移動2.鼠標控制上下左右旋轉3.AD控制傾斜 using System.Collections; using System.Collections.Generic; using UnityEngine;public class PlayerController : MonoBehav…

【C++】C++11新特性(一)

文章目錄 列表初始化initializer_list左值引用和右值引用 列表初始化 在 C98 中可以使用{}對數組或者結構體元素進行統一的列表初始值設定 struct Point {int _x;int _y; }; int main() {int array1[] { 1, 2, 3, 4, 5 };int array2[5] { 0 };Point p { 1, 2 };return 0; …