linux安裝uwsgi錯誤:gcc returned 1 exit status error: lto-wrapper failed collect2:


一、問題由來:

    我們用python Django開發web應用時,開發環境里使用 python manage.py runserver 來運行服務器。這只適用測試環境。

    正式發布的服務,我們需要一個可以穩定而持續的服務器 ,本文將以 Nginx 為例。我們使用Nginx +  UWSGI + Django來部署我們的Django代碼

 

    然后,linux上pip下載UWSGI時,主要報錯如下(圖為網圖,報錯一致,自己未截圖,取自:https://blog.csdn.net/zhangyichuan_dlut/article/details/103509382,侵刪):

 

  可以看出是gcc返回的錯誤,

  搜索得知,是因為  pip里的uwsgi包比較舊,系統中的gcc版本過高,會有報錯的情況

 二、解決方案:

  1、使用conda下載uwsgi,(由於anaconda本身似乎不含有此包,用下面命令):

   conda install -c conda-forge uwsgi        (親測有效)

  下面是參考中的其他conda下載命令,(未驗證,參考地址:https://github.com/unbit/uwsgi/issues/1770

    To install this package with conda run one of the following:
    conda install -c conda-forge uwsgi
    conda install -c conda-forge/label/gcc7 uwsgi
    conda install -c conda-forge/label/broken uwsgi
    conda install -c conda-forge/label/cf201901 uwsgi
    conda install -c conda-forge/label/cf202003 uwsgi

2、將系統中的gcc改回較低版本后,再次運行pip install uwsgi,實現下載(未驗證)
#查看當前系統安裝所有版本的gcc
ls /usr/bin/gcc* -l 
#如果gcc有5以下的版本,則不用在安裝
sudo apt-get  install gcc-4.8
#更改gcc系統默認版本
sudo rm /usr/bin/gcc #刪除已有軟連接
sudo ln -s /usr/bin/gcc-4.8 /usr/bin/gcc #創建指向gcc4.8的軟連接

pip install uwsgi

 

(注意:網上許多的conda下載解決方案中,即使conda update conda是最新版,也無法直接conda install uwsgi實現下載,需要用博主上面的conda conda install -c conda-forge uwsgi)




 


免責聲明!

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



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