cmake版本过高可能会出现多种问题,如解:/usr/include/boost/math/special_functions/erf.hpp:1201:25: error: unable to find numeric literal
/usr/include/boost/math/special_functions/lanczos.hpp:1201:25: error: unable to find numeric literal
当出现这个问题时,经过一番搜索找到相关解答是gcc版本升级,这或许不能解决问题,经过多次重装系统测试,在ubuntu16.04下,若cmake 版本过高,则可能出现此问题,通常使用cmake3.18以上版本会出现此问题,当我把cmake版本安装为3.14版本时,不会出现此问题。
cmake安装和卸载:简洁描述版可以参考
Ubuntu安装&卸载cmake的三种方法_普通网友的博客-CSDN博客_ubuntu卸载cmake
通常选择源码安装最为方便,但记得将系统默认的/usr/bin下面的cmake或者cpack用源码编译好的/usr/local/bin/cmake 进行拷贝或者软链接
/usr/local/bin/cmake下面的cmake可执行文件是cmake源码文件目录下的bin文件:
上面的是3.14版本
上面的是3.18版本,别装太高级版本就好