anaconda创建虚拟环境巨坑地方!
启动uwsgi时可能会报下面的错误
[root@localhost ~]# uwsgi
uwsgi: error while loading shared libraries: libicui18n.so.58: cannot open shared object file: No such file or directory
缺少了
libicui18n.so.58这个东西
今入虚拟环境后,查看uwsgi所在地址,然后使用 LDD 查看缺少的包
[root@localhost ~]# which uwsgi /root/anaconda3/envs/py3/bin/uwsgi
(py3) [root@localhost ~]# ldd /root/anaconda3/envs/py3/bin/uwsgi
#ldd 用来查看程序以来,内容如下
linux-vdso.so.1 => (0x00007ffc14fc7000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ff6b0347000)
libm.so.6 => /lib64/libm.so.6 (0x00007ff6b0045000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007ff6afe40000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007ff6afbde000)
libxml2.so.2 => /lib64/libxml2.so.2 (0x00007ff6af874000)
libz.so.1 => /lib64/libz.so.1 (0x00007ff6af65d000)
liblzma.so.5 => /lib64/liblzma.so.5 (0x00007ff6af437000)
libicui18n.so.58 => not found
libicuuc.so.58 => not found
libicudata.so.58 => not found
libutil.so.1 => /lib64/libutil.so.1 (0x00007ff6af233000)
librt.so.1 => /lib64/librt.so.1 (0x00007ff6af02a000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007ff6aedf3000)
libc.so.6 => /lib64/libc.so.6 (0x00007ff6aea30000) /lib64/ld-linux-x86-64.so.2 (0x00005634c289c000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007ff6ae82c000)
uwsgi 缺少这三个东西,于是就把anaconda3/lib 下相应的包软链到/lib64下去(64bit 机器,如果时32bit 机器则软链到/lib下)
[root@localhost ~]# ln -s /root/anaconda3/lib/libicui18n.so.58 /lib64/libicui18n.so.58
[root@localhost ~]# ln -s /root/anaconda3/lib/libicuuc.so.58 /lib64/libicuuc.so.58
[root@localhost ~]# ln -s /root/anaconda3/lib/libicudata.so.58 /lib64/libicudata.so.58
如果链接不上去可以ln -sf试试
补充完三个包还是有问题
[root@localhost ~]# ldd /root/anaconda3/envs/py3/bin/uwsgi
/root/anaconda3/envs/py3/bin/uwsgi: /lib64/./libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib64/libicui18n.so.58)
/root/anaconda3/envs/py3/bin/uwsgi: /lib64/./libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /lib64/libicui18n.so.58)
/root/anaconda3/envs/py3/bin/uwsgi: /lib64/./libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib64/libicuuc.so.58)
/root/anaconda3/envs/py3/bin/uwsgi: /lib64/./libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /lib64/libicuuc.so.58)
少了
CXXABI_1.3.8、
CXXABI_1.3.9 可能使用因为使用的
libstdc++.so.6版本太低了,里面没有这个
以上只要缺少对应的版本,都可通过安装对应缺失的libstdc++.so.6.0.13以上的版本,来解决缺失版本的问题。
当前截图中是高版本的libstdc++.so.6.0.24,只要安装此版本,其他低版本都有了。
2.从网上下载所需要的libstdc++.so.6.0.24版本。
3.把libstdc++.so.6.0.24拷贝到/usr/lib64目录下。
cp libstdc++.so.6.0.24 /usr/lib64/
4.删除原来的libstdc++.so.6符号连接。
rm -rf libstdc++.so.6
5.新建新符号连接。
ln -s libstdc++.so.6.0.24 libstdc++.so.6
csdn大佬给的链接:https://pan.baidu.com/s/163zsi4-GDS8uAh1czluYSA 密码:t0ln
详情链接https://blog.csdn.net/weixin_43227196/article/details/110946066
分类:
anaconda
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示