1.错误原因
报错如上。后来经过查阅,发现这个错误是因为由于gcc6的缘故。我的gcc 版本是6.5的。gcc6已经把吧stdlib.h纳入了libstdc++以进行更好的优化,C Library的头文件stdlib.h使用 Include_next,而include_next对gcc系统头文件路径很敏感。
所以这里我们不要把include路径作为系统目录,而是使用标准方式包含include 目录。
2.解决办法
在cmake 编译的时候,加上 以下命令在里面,即可成功。
-DENABLE_PRECOMPILED_HEADERS=OFF