ubuntu下編譯安裝Python3.7.2


Ubuntu下安裝Python3.7.2

1、去官網下載Python3.7.2

首先到要安裝的文件夾下創建安裝目錄

mkdir /usr/local/bin/python3.7

切到要下載的文件夾下:

cd /user/Downloads

下載文件

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

解壓文件夾

tar -xf Python-3.7.2

切進解壓目錄下:

cd /Python-3.7.2

指定安裝位置

configure --prefix=/usr/local/bin/python3.7
#注意:這里的configure是配置文件的意思,它在解壓后的文件夾下,是一個文件,執行它即可:./configure …… 這樣執行,上面的命令需根據實際文件位置。

編譯

make

編譯安裝

make install

安裝后可以看到並沒有成功,報了一個錯誤,說zlib不可用,如果成功跳過,如下圖:

在linux中安裝zlib-devel,依次輸入下面的命令:

   apt-get install ruby

   apt-get install zlib1g-dev

 

編譯安裝此時可能會出現錯誤,缺少依賴(缺少_ctype組件),如下

ModuleNotFoundError: No module named '_ctypes'

這個問題是缺少libffi-devel組件,網上安裝它的方法都不能解決,比如說:

#yum install libffi-devel -y
#make install

這個不行

然后我看到了這個方法:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus
sudo apt-get install build-essential libncursesw5-dev libgdbm-dev libc6-dev
sudo apt-get install zlib1g-dev libsqlite3-dev tk-dev
sudo apt-get install libssl-dev openssl
sudo apt-get install libffi-dev

我運行了最后一句代碼……,發現還是不行,然后發現以下這個:

ubuntu默認軟件包管理器不是yum,而是dpkg,安裝軟件時用apt-get你說的網上常見法解決方法,命令改為代碼:
sudo apt-get install libxpm-dev libxext-dev 就行了
PS:在ubuntu下最好不要去裝yum,不然可能會出現一些奇怪的問題----

                                                                                                                                                                ---------摘自網絡

運行之后,重新編譯安裝,解決問題!!!

還有以下辦法,就是在安裝之前安裝依賴,不過我沒有試過:

中間可能有多余空格,去除下再運行,一般都能安裝成功,如果不能可以先更新下:sudo apt-get update
sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-dev libsqlite3-dev libreadline-dev tk-dev libgdbm-dev libdb-dev libpcap-dev xz-utils libexpat1-dev liblzma-dev libffi-dev libc6-dev

 

接下來創建軟連接,注意:軟連接的源文件是安裝目錄下的bin文件下的python3.7

sudo ln -s /usr/local/bin/python3.7/bin/python3.7  /usr/bin/python3.7
sudo ln -s /usr/local/bin/python3.7/bin/pip3.7  /usr/bin/pip3.7

注意Python3.7程序的實際位置。

真是一段難忘的心路歷程~

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM