Dlib编译错误Converting std::__cxx11::string to std::string

在编译Dlib的时候总是无法通过。引发错误的原因居然是Anaconda。

Dlib编译错误Converting std::__cxx11::string to std::string

在编译Dlib的时候总是无法通过,报错信息包含Converting std::__cxx11::string to std::string

🤔

一开始以为是Dlib的问题,但是在github查询发现dlib的作者davis认为这个是编译器错误[1]。以错误信息作为关键词继续检索在stackoverflow发现这样一则解释[2],原来是gcc5.4要求编译与链接的库文件采用统一的ABI版本[3]。所以,技术ldd命令一看,libstdc++.so.6路径里居然有Anaconda

反正也不常用,干脆卸载了它。然后就一切正常了。

理论上将Anaconda从系统PATH变量中去掉也可以,如果你遇到类似的问题不妨试试看。

REF


  1. https://github.com/davisking/dlib/issues/440 ↩︎

  2. http://stackoverflow.com/questions/33394934/converting-std-cxx11string-to-stdstring ↩︎

  3. gcc关于ABI的说明 ↩︎

转发至

微信扫一扫分享

WeChat QR Code

有AI相关的想法,但不知道怎么落地?

我是国冰,独立AI开发者。十多年技术一线——半导体显示、智慧城市到自动驾驶;现在一个人+AI,接AI落地项目,从梳理需求到系统落地,陪你走通。

微信聊聊 微信二维码 看我能做什么