nm命令 以及 C++11 编译出现找不到stringstream 以及 undefined reference to `std::runtime_error

最近在学习ZLMediaKit 源码 

里面用到了很多C++11 的知识 

本地有一个 ubuntu18.04 的服务器 

源码下下来发现 直接编译报很多错误 

比如 找不到 std::runtime_error

nm命令 以及 C++11 编译出现找不到stringstream 以及 undefined reference to `std::runtime_error_第1张图片

 

 

找不到 stringstream  等等等 

后来偶然的机会发现 是libstdc++.so.6 太老了 找一个新的 替换掉这个就可以

首先找一下系统里面libstdc++.so.6这个库的位置 

我们是64位的系统 默认用的是 /usr/lib/x86_64-linux-gnu/这个目录下的

nm命令 以及 C++11 编译出现找不到stringstream 以及 undefined reference to `std::runtime_error_第2张图片

 

使用nm命令查找下 发现 不管是32位还是64位的 c++的库里面都没有这个

可能是这个库被谁替换过

找一个正常的 正常的应该如下 :

nm命令 以及 C++11 编译出现找不到stringstream 以及 undefined reference to `std::runtime_error_第3张图片

 用这个正常的替换掉 默认路径的库即可

你可能感兴趣的:(c++,开发语言)