Python之uWSGI服務器在centos7下配置的教程和常見的錯誤類型總結

錯誤類型一:

uwsgi: error while loading shared libraries: libicui18n.so.58: cannot open shared object file: No such file or directory
 

解決方案:這裏比較簡單,兩種解決方案:

其一,直接添加lib的環境變量【推薦方法】:

centos7 -linux 添加環境變量【/lib快捷方式和/bin不一樣】:https://blog.csdn.net/weixin_43343144/article/details/91634109

你只要安裝了Anaconda3,uwsgi運行所依賴的庫Anaconda3都有,添加一個lib的環境變量就可以搞定!

方法二:直接把沒有的“ libicui18n.so.58”這些庫一一拷貝一份進入/lib64即可!

 

 

錯誤類型二:

uwsgi: /lib64/./libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib64/libicui18n.so.58)
uwsgi: /lib64/./libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /lib64/libicui18n.so.58)
uwsgi: /lib64/./libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib64/libicuuc.so.58)
uwsgi: /lib64/./libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /lib64/libicuuc.so.58)

解決方案步驟:

【參考別人的解決方案參考:https://blog.csdn.net/ccbrid/article/details/78979878

步驟一:通過下面的命令查看/usr/lib64/下的動態庫版本,發現沒有`CXXABI_1.3.9'

[zs@gpu]$ strings /usr/lib64/libstdc++.so.6 | grep 'CXXABI'
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_TM_1

步驟二:用下面命令查找動態庫文件:太多,此處只貼兩個有用的動態庫。其中6.0.21爲最新,包含所需的1.3.9

[zs@gpu]$ find / -name "libstdc++.so.6*
/usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.0.19
/opt/intel/linux/brew/linuxbrew/lib/libstdc++.so.6.0.21

步驟三:

檢查[zs@gpu lib64]$ strings /opt/intel/linux/brew/linuxbrew/lib/libstdc++.so.6.0.21 | grep 'CXXABI'可以使用
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_1.3.7
CXXABI_1.3.8
CXXABI_1.3.9
CXXABI_TM_1
CXXABI_FLOAT128

步驟四:

或直接把成功的庫複製到/lib64即可
$ cp /opt/intel/linux/brew/linuxbrew/lib/libstdc++.so.6.0.21 /lib64/

【務必注意:複製過去一定要替換之前的libstdc++.so.6文件---否則還會失敗】
$ mv /lib64/libstdc++.so.6.0.21 /lib64/libstdc++.so.6

或者執行下面的【推薦直接複製一份進入/lib64即可-你的電腦必須是64位】 

// 或把/user/local/Anaconda3/lib添加爲環境變量【系統會自動去lib的環境變量LD_LIBRARY_PATH中尋找】
$ cp /opt/intel/linux/brew/linuxbrew/lib/libstdc++.so.6.0.21  /user/local/Anaconda3/lib

【務必注意:複製過去一定要替換之前的libstdc++.so.6文件---否則還會失敗】
$ mv /user/local/Anaconda3/lib/libstdc++.so.6.0.21 /user/local/Anaconda3/lib/libstdc++.so.6

centos7 -linux 添加環境變量【/lib快捷方式和/bin不一樣】:https://blog.csdn.net/weixin_43343144/article/details/91634109

 

再次運行最初想運行的程序。成功,錯誤解決。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章