错误类型一:
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
再次运行最初想运行的程序。成功,错误解决。