编译出错libicui18n.so.58: undefined reference to `__cxa_throw_bad_array_new_length@CXXABI_1.3.8'
最新推荐文章于 2025-03-02 13:22:59 发布
nudt_qxx
最新推荐文章于 2025-03-02 13:22:59 发布
阅读量1.4w
在编译时候报错,提示:
conda3/lib/libicui18n.so.58: undefined reference to `__cxa_throw_bad_array_new_length@CXXABI_1.3.8'
conda3/lib/libicui18n.so.58: undefined reference to `operator delete(void*, unsigned long)@CXXABI_1.3.9'
搜索了相关资料,这是因为需要编译的时候链接到libstdc++6,解决方案如下:
一.首先安装libstdc++6
apt-get install libstdc++6
然后在编译的时候加入-DCMAKE_EXE_LINKER_FLAGS='-static-libstdc++'
选项:
cmake .. -DCMAKE_EXE_LINKER_FLAGS=’-static-libstdc++’
然后再去make就会发现错误已经解决!
想使用 ningx + uwsgi + flask 搭建 python 应用环境
Python使用的是anaconda3(pyhton 3.7)
依赖包安装完毕,但是执行 uwsgi 的时候出现如下异常
(roots) [root@iZ2ze5lq5zpd6lctghc8x3Z ~]# uwsgi
uwsgi: error while loading sha...
【已解决】dyld[64263]: Library not loaded: /opt/homebrew/opt/icu4c/lib/libicui18n.74.dylib Referenced
<resources
xmlns:tools="http://schemas.android.com/tools"
tools:ignore="MissingTranslation" >
</resources>
关于 麒麟系统启动应用报错“undefined symbol: __cxa_throw_bad_array_new_length, version Qt_5“ 的解决方法
由于工作关系,需要编译老版本的GCC(4.8)。但在Ubuntu18.04上遇到很多问题,其中最难解决的是如下问题:
/usr/lib/x86_64-linux-gnu/libicuuc.so.60: symbol __cxa_throw_bad_array_new_length version CXXABI_1.3.8 not defined in file libstdc++.so.6 with link time reference
经过一番摸索,终于找到问题的根源,并顺利解决。具体原因及方法如下
报这个错误的虚拟环境是py3.7_R4,可以发现libicuil8n.so.58这个文件不在py3.7_R4这个虚拟环境的lib文件夹里
2 查看虚拟环境py3.7_R4的lib文件夹,发现只有以下两个文件:
3 解决方法:使用软连接即可解决
ln -s libicui18n.so.68 libicui18n.so.58
软链接太强啦!!!
...
用python导入igraph出现的问题:
ImportError: libicui18n.so.58: cannot open shared object file: No such file or directory
困扰我太多天了,一直没找到解决办法,感谢博主一波????
https://www.kanzhun.com/jiaocheng/352611.html
亲身实践,设置为相对路径可行
用nginx + uwsgi + flask搭建python应用环境
python使用anaconda3(python 3.6)
依赖包安装完毕,但是执行uwsgi的时候出现如下异常
(py3) [root@localhost ~]# uwsgi
uwsgi: error while loading shared libraries: libicui18n.so.58: cann...
libicui18n.so.69: cannot open shared object file: No such file or directory错误表示系统无法找到libicui18n.so.69共享库文件。这可能是由于缺少该库文件或库文件路径配置错误导致的。解决此问题的一种方法是通过安装相应的库文件来解决依赖关系。
以下是解决libicui18n.so.69错误的步骤:
1. 首先,确认您的系统是否已经安装了libicu库。您可以使用以下命令来检查:
```shell
dpkg -l | grep libicu
```
如果没有输出结果,则表示您的系统尚未安装libicu库。
2. 如果您的系统尚未安装libicu库,您可以使用以下命令来安装:
```shell
sudo apt-get install libicu-dev
```
3. 安装完成后,您可以使用以下命令来确认libicui18n.so.69库文件是否存在:
```shell
find / -name "libicui18n.so.69"
```
如果找到了该文件,则表示安装成功。
4. 如果找不到libicui18n.so.69库文件,您可以尝试重新安装libicu库,或者从其他来源获取该库文件并将其放置在正确的路径下。
请注意,上述步骤是基于Ubuntu系统的。如果您使用的是其他Linux发行版,请根据相应的包管理器和库文件命名规则进行调整。