一、预置条件

1、cmake要升级到3.5版本以上。

cmake的升级参考mark:centos升级cmake步骤_CrystalShaw的博客-CSDN博客

2、需要升级GCC版本到4.9版本以上,否则会出现如下错误。

升级后编译之前需要先clear一下。否则残留的so可能捣乱了。

error: no matching function for call to ‘StrFormat(const char [5], const int&, double&)

GCC升级步骤:

1、安装centos-release-scl

sudo yum install centos-release-scl

2、安装devtoolset,注意,如果想安装7.*版本的,就改成devtoolset-7-gcc*,以此类推

sudo yum install devtoolset-8-gcc*

3、激活对应的devtoolset,所以你可以一次安装多个版本的devtoolset,需要的时候用下面这条命令切换到对应的版本

scl enable devtoolset-8 bash

4、查看gcc版本

gcc -v

二、下载并编译abseil-cpp

1、创建目录

mkdir Source && cd Source

2、下载代码

git clone https://github.com/abseil/abseil-cpp.git
cd abseil-cpp

3、创建编码及安装目录

mkdir build && mkdir install && cd build

4、生成makefile

cmake -DCMAKE_INSTALL_PREFIX=../install/ DABSL_PROPAGATE_CXX_STD=ON -DABSL_PROPAGATE_CXX_STD=ON  -DCMAKE_CXX_STANDARD=11 .. 

5、编译及安装

make
make install

备注说明:

/absl/base/policy_checks.h:77:2: error: #error "C++ versions less than C++11 are not supported."
#error "C++ versions less than C++11 are not supported."

编译时需要指定使用c11,有两种方法指定:

1、在CMakeLists.txt文件中增加add_definitions(-std=c++11)

2、在cmake命令行中增加CMAKE_CXX_STANDARD=11编译选项

cmake CMAKE_CXX_STANDARD=11 ..

三、参考

error: no matching function for call to ‘StrFormat(const char [45], const double&, double, const double&, const double&)’ moments.skewness, moments.kurtosis) · Issue #24940 · grpc/grpc · GitHub

CentOS 7升级gcc版本 - 姬无华 - 博客园

abseil / C++ Quickstart With CMake

centos下编译abseil-cpp相关推荐

  1. nginx 怎么重新编译安装mysql,centos 下 编译安装 nginx + mysql + php 服务

    centos 下编译安装nginx + mysql + php 服务 1.安装nginx 1.1.安装依赖包 yum install wget make gcc gcc-c++ pcre-devel ...

  2. CentOS下编译64位的libpython2.6.so.1.0库

    CentOS下编译64位的libpython2.6.so.1.0库 - Cody的专栏 - 博客频道 - CSDN.NET CentOS下编译64位的libpython2.6.so.1.0库 2011 ...

  3. 在CentOS下编译VLC源码

    在CentOS下编译VLC源码 一.下载VLC源码 二.VLC编译与安装 1.编译与安装 2.库文件 3.头文件 三.报错解决 1.configure: error: Could not find l ...

  4. [CentOS]CentOS下编译CPP文件时报错[undefined reference to `__gxx_personality_v0' collect2: ld]的解决办法...

    在CentOS环境下编译CPP时报出 undefined reference to `__gxx_personality_v0' collect2: ld 以上错误,调查了一下,加上参数[-lstdc ...

  5. 如何在visual studio下编译zxing cpp,以及zxing c++的使用

    刚开始请允许我发一下牢骚,刚开始学c++,然后,在使用zxing c++解析二维码的时候,需要找资料.但是,我所找的资料都有问题,下载zxing cpp之后,编译的时候各种问题,当时头都大了.而且,网 ...

  6. siesta在Linux运行,siesta在centos下编译问题

    新虫求教关于siesta在centos下的编译问题. 配置:centos6.5 ifort, mpi,mkl等用的都是intel composer xe 2016 内含的包.siesta 包使用的是s ...

  7. CentOS下编译Linux内核

    前言 编译内核是一项很简单的事情,但却是进入Linux内核世界的第一步,想要开发内核代码,想要了解内核的运行机制,第一步就是编译Linux内核,以下是在centos7.5环境下编译内核的具体流程. 1 ...

  8. Debian/Ubuntu/Centos下编译安装RocksDB

    参考:rocksdb/INSTALL.md at master · facebook/rocksdb 注意:gcc版本至少要4.8,安装教程:在CentOS/Debian/Ubuntu上编译安装最新版 ...

  9. 64位centos 下编译 hadoop 2.6.0 源码

    64位os下为啥要编译hadoop就不解释了,百度一下就能知道原因,下面是步骤: 前提:编译源码所在的机器,必须能上网,否则建议不要尝试了 一. 下载必要的组件 a) 下载hadoop源码 (当前最新 ...

  10. CentOS下编译安装LAMP开发环境

    http://www.linuxidc.com/Linux/2011-10/45743.htm 配置PHP开发环境前获取软件包.笔者用的mysql版本是社区版本的.主要软件包有: httpd,mysq ...

最新文章

  1. 微软开源 MS-DOS 1.25 和 MS-DOS 2.0
  2. signature=51b3a9ac95339489ef7384c6e21e303f,nginx – Let’s Encrypt的中间证书
  3. C#开发:openfiledialog的使用
  4. MySQL笔记 4月记
  5. java类型强转会有性能消耗吗_Java代码性能优化总结(转)
  6. Windows 实用小工具
  7. Web前端农历/阴历转换
  8. 多恩布什《宏观经济学》第十三版笔记和课后答案
  9. 使用navicat进行库表数据拷贝
  10. JDK的下载与安装(详细版)
  11. 求一元二次方的根(虚根求法)
  12. 因果推理(causal inference)初步调研
  13. SAP ABAP 调用 BAPI_GOODSMVT_CREATE 没有执行 MIGO/MB0A 相同检查的问题
  14. Excel+VBA+之快速上手
  15. ICPR 2018|阿里巴巴读光OCR及MTWI数据集亮相引关注
  16. 【工程光学】光度学色度学
  17. 【仓库物资识别】二、将三维点云转换成二维图像
  18. 新浪新闻评论系统的架构演进和经验总结
  19. 记录自己学习GD32F103R 使用fmc的过程
  20. idea Gradle7.0+ :Could not find method compile()

热门文章

  1. 计算机图形学-样条曲线Spline
  2. 耐用的蓝牙耳机推荐,现在比较好的蓝牙耳机点评
  3. yum install brctl报错
  4. qnap安装Linux程序,播酷云J3455-itx 安装 黑威联通Qnap 4.4.0(实机安装)
  5. H5网页实现微信分享,分享朋友圈功能(分享带图片,附源码)
  6. 关于H5页面在微信端的分享
  7. Appium原理及使用
  8. png图像保存为yuv格式以及yuv格式转为png
  9. Sketch 54.1 Shark 鲨鱼中文汉化特别版 Mac 设计师必备的原型UI设计工具
  10. 51单片机数码管闪烁c语言,AT89C51单片机数码管闪烁问题怎么解决