CentOS 7.4安裝python3.8及報(bào)錯(cuò)處理

一淹真、下載python3.8.2版本的壓縮包

鏈接:https://pan.baidu.com/s/19TQjJHilJOTKQOVnc0chHg
提取碼:oxzo

二巍扛、下載完成后解壓,進(jìn)入Python-3.8.2文件夾腹侣,編譯安裝

tar -xf Python-3.8.2.tgz
cd Python-3.8.2/ 

依次執(zhí)行以下三個(gè)操作(https://blog.csdn.net/tanmx219/article/details/86518446)

./configure --prefix=/usr/local --with-pydebug --enable-shared CFLAGS=-fPIC

make

make install
configure參數(shù)說明:

【其中/usr/local是安裝目錄叔收,當(dāng)然你完全可以選其他的地方,如果你需要學(xué)習(xí)Python源碼傲隶,那就要調(diào)試版饺律,此時(shí)要加上--with-pydebug,更詳細(xì)的過程可以參考官方說明:https://devguide.python.org/
補(bǔ)充:這里加上--enable-shared和-fPIC之后可以將python3的動(dòng)態(tài)鏈接庫編譯出來跺株,默認(rèn)情況編譯完lib下面只有python3.xm.a這樣的文件复濒,python本身可以正常使用,但是如果編譯第三方庫需要python接口的比如caffe等乒省,則會(huì)報(bào)錯(cuò)巧颈;所以這里建議按照上面的方式配置,另外如果openssl不使用系統(tǒng)yum安裝的袖扛,而是使用自己編譯的比較新的版本可以使用--with-openssl=/usr/local/openssl這種方式指定砸泛,后面目錄為openssl實(shí)際安裝的目錄十籍,另外編譯完還要將openssl的lib目錄加入ld運(yùn)行時(shí)目錄中即可. 】

在執(zhí)行make過程中會(huì)出現(xiàn)很多問題,這些問題一定要一一排查解決:

Python build finished successfully!
The necessary bits to build these optional modules were not found:
_bz2                  _curses               _curses_panel      
_dbm                  _gdbm                 _hashlib           
_lzma                 _sqlite3              _ssl               
_tkinter              _uuid                 readline           
zlib                                                           
To find the necessary bits, look in setup.py in detect_modules() for the module's name.


The following modules found by detect_modules() in setup.py, have been
built by the Makefile instead, as configured by the Setup files:
_abc                  atexit                pwd                
time                                                           


Failed to build these modules:
_ctypes                                                        


Could not build the ssl module!
Python requires an OpenSSL 1.0.2 or 1.1 compatible libssl with X509_VERIFY_PARAM_set1_host().
LibreSSL 2.6.4 and earlier do not provide the necessary APIs, https://github.com/libressl-portable/portable/issues/381

yum install libffi-devel -y 命令來安裝_ctypes模塊
yum install readline-devel -y 命令來安裝readline模塊
yum install zlib zlib-devel -y 命令來安裝zlib模塊
yum install python3-tkinter tkinter tcl-devel tk-devel -y 命令來安裝_tkinter模塊
yum install xz-devel lzma -y 命令來安裝_lzma模塊
yum install libuuid uuid-devel -y 命令來安裝_uuid模塊
yum install sqlite-devel -y 命令來安裝 _sqlite3模塊
yum install gdbm-devel -y 命令來安裝 _dbm唇礁、_gdbm模塊
yum install ncurses-devel -y 命令來安裝 _curses勾栗、_curses_panel 模塊
yum install openssl-devel -y 命令來安裝 _ssl模塊

全部依賴組件安裝:
yum -y install gcc gcc-c++ zlib zlib-devel libffi-devel
yum -y install gcc kernel-devel kenel-headers make bzip2
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

安裝libressl-2.6.4以上版本的依賴模塊
安裝教程:https://blog.csdn.net/scorpio921/article/details/82682757
下載地址:鏈接:https://pan.baidu.com/s/16MdU8orh4AHUpc7jVIU0Fw
提取碼:ezbt

編譯錯(cuò)誤1:

/home/Python-3.8.2/Modules/_uuidmodule.c:19:5: error: unknown type name ‘uuid_t’
     uuid_t uuid;
     ^
/home/Python-3.8.2/Modules/_uuidmodule.c:36:5: error: implicit declaration of function ‘uuid_generate_time’ [-Werror=implicit-function-declaration]
     uuid_generate_time(uuid);

解決方法:

網(wǎng)上https://my.oschina.net/mengyoufengyu/blog/2876198說,添加環(huán)境變量盏筐,執(zhí)行了一下命令械姻,但不起作用

vim ~/.bash_profile
添加一行 export CPPFLAGS=" -Wno-error=coverage-mismatch" 保存退出
source ~/.bash_profile

最終用以下方法https://zhuanlan.zhihu.com/p/120341207解決:
對(duì)_uuidmodule.c文件進(jìn)行修改:
cd Python-3.8.2/Modules
vi _uuidmodule.c

#include "Python.h"
/* #ifdef HAVE_UUID_UUID_H */
#include <uuid/uuid.h>
/* #elif defined(HAVE_UUID_H)
#include <uuid.h>
#endif */

編譯錯(cuò)誤2:

/home/Python-3.8.2/Modules/_cursesmodule.c:3240:5: error: implicit declaration of function ‘setupterm’ [-Werror=implicit-function-declaration]
     if (!initialised_setupterm && setupterm((char *)term, fd, &err) == ERR) {

解決方法:

參考https://my.oschina.net/mengyoufengyu/blog/2876198
cd Python-3.8.2
sed -i "s/Werror=implicit-function-declaration/Wno-error/g" configure
make clean
make

編譯成功提示:

image.png

安裝成功提示:

......
Looking in links: /tmp/tmpsqv00cbn
Collecting setuptools
Collecting pip
Installing collected packages: setuptools, pip
Successfully installed pip-19.2.3 setuptools-41.2.0

安裝成功之后,安裝目錄就在/usr/local/

查看python版本:

[root@localhost bin]# python -V
Python 2.7.5
[root@localhost bin]# python3 -V
Python 3.8.2
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末机断,一起剝皮案震驚了整個(gè)濱河市楷拳,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌吏奸,老刑警劉巖欢揖,帶你破解...
    沈念sama閱讀 211,884評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異奋蔚,居然都是意外死亡她混,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門泊碑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來坤按,“玉大人,你說我怎么就攤上這事馒过〕襞В” “怎么了?”我有些...
    開封第一講書人閱讀 157,435評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵腹忽,是天一觀的道長(zhǎng)来累。 經(jīng)常有香客問我,道長(zhǎng)窘奏,這世上最難降的妖魔是什么嘹锁? 我笑而不...
    開封第一講書人閱讀 56,509評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮着裹,結(jié)果婚禮上领猾,老公的妹妹穿的比我還像新娘。我一直安慰自己骇扇,他們只是感情好摔竿,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,611評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著匠题,像睡著了一般拯坟。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上韭山,一...
    開封第一講書人閱讀 49,837評(píng)論 1 290
  • 那天郁季,我揣著相機(jī)與錄音冷溃,去河邊找鬼。 笑死梦裂,一個(gè)胖子當(dāng)著我的面吹牛似枕,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播年柠,決...
    沈念sama閱讀 38,987評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼凿歼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了冗恨?” 一聲冷哼從身側(cè)響起答憔,我...
    開封第一講書人閱讀 37,730評(píng)論 0 267
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎掀抹,沒想到半個(gè)月后虐拓,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,194評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡傲武,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,525評(píng)論 2 327
  • 正文 我和宋清朗相戀三年蓉驹,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片揪利。...
    茶點(diǎn)故事閱讀 38,664評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡态兴,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出疟位,到底是詐尸還是另有隱情瞻润,我是刑警寧澤,帶...
    沈念sama閱讀 34,334評(píng)論 4 330
  • 正文 年R本政府宣布献汗,位于F島的核電站敢订,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏罢吃。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,944評(píng)論 3 313
  • 文/蒙蒙 一昭齐、第九天 我趴在偏房一處隱蔽的房頂上張望尿招。 院中可真熱鬧,春花似錦阱驾、人聲如沸就谜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽丧荐。三九已至,卻和暖如春喧枷,著一層夾襖步出監(jiān)牢的瞬間虹统,已是汗流浹背弓坞。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留车荔,地道東北人渡冻。 一個(gè)月前我還...
    沈念sama閱讀 46,389評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像忧便,于是被迫代替她去往敵國(guó)和親族吻。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,554評(píng)論 2 349