真香!Facebook官方的开源 C++11 组件库

架构 2023-07-05 17:29:38
287阅读

今日,猿妹要和大伙儿强烈推荐一个Facebook开源系统的C 11 组件库——Folly,Folly包括Facebook 普遍应用的各种各样关键库部件。

Folly是Facebook open source library的简称,给予了相近 Boost 和 std 库的作用。包含散列、字符串数组、空间向量、内存分配、位解决等,达到规模性性能卓越的要求。

新项目详细地址:https://github.com/facebook/folly

数字逻辑

Folly 是一组相对性单独的部件,有的简易到好多个标记。对內部依靠沒有限定,这代表着给出的 folly 控制模块能够应用一切别的 folly 部件。

所有符号都是在顶尖类名中界定folly,自然宏以外。宏名字为 ALL_UPPERCASE 而且应以FOLLY_. 类名folly界定了别的內部类名,比如internal或detail。客户编码不可取决于这种类名中的标记。

Folly 也有一个experimental文件目录。这一名字关键代表着大家觉得 API 很有可能会伴随着時间的变化产生重特大转变。一般,此编码仍在很多应用而且历经优良检测。

Folly下载安装

folly 适用 gcc (5.1 )、clang 或 MSVC。它适用在 Linux(x86-32、x86-64 和 ARM)、iOS、macOS 和 Windows (x86-64) 上运作。你能应用下列指令安装下载:

 
  1. wget https://github.com/google/googletest/archive/release-1.8.0.tar.gz && \ 
  2. tar zxf release-1.8.0.tar.gz && \ 
  3. rm -f release-1.8.0.tar.gz && \ 
  4. cd googletest-release-1.8.0 && \ 
  5. cmake . && \ 
  6. make && \ 
  7. make install 

搭建检测

默认设置状况下,搭建检测做为CMake all总体目标的一部分是禁止使用的。要搭建检测,请在配备时将-DBUILD_TESTS=ON特定为CMake。

Ubuntu 16.04 LTS

必须 下列程序包(随便裁切和黏贴下边的 apt-get 指令):

 
  1. sudo apt-get install \ 
  2.     g  \ 
  3.     cmake \ 
  4.     libboost-all-dev \ 
  5.     libevent-dev \ 
  6.     libdouble-conversion-dev \ 
  7.     libgoogle-glog-dev \ 
  8.     libgflags-dev \ 
  9.     libiberty-dev \ 
  10.     liblz4-dev \ 
  11.     liblzma-dev \ 
  12.     libsnappy-dev \ 
  13.     make \ 
  14.     zlib1g-dev \ 
  15.     binutils-dev \ 
  16.     libjemalloc-dev \ 
  17.     libssl-dev \ 
  18.     pkg-config \ 
  19.     libunwind-dev 

Folly 依靠必须 从源码安裝的fmt。下列指令将免费下载、编译程序和安裝 fmt。

 
  1. git clone https://github.com/fmtlib/fmt.git && cd fmt 
  2.  
  3. mkdir _build && cd _build 
  4. cmake .. 
  5.  
  6. make -j$(nproc) 
  7. sudo make install 

假如必须 高級调节作用,请应用:

 
  1. sudo apt-get install \ 
  2.     libunwind8-dev \ 
  3.     libelf-dev \ 
  4.     libdwarf-dev 

在 folly 文件目录(比如 checkout 网站根目录或归档解压网站根目录)中,运作:

 
  1. mkdir _build && cd _build 
  2.   cmake .. 
  3.   make -j $(nproc) 
  4.   make install # with either sudo or DESTDIR as necessary 

现阶段,Folly早已在Github上标星17.6K,总计支系4k高清(Github详细地址:https://github.com/facebook/folly)阅读文章Folly的编码对C 程序猿发展也是有非常大协助,期待这一新项目你能喜爱。

the end
免责声明:本文不代表本站的观点和立场,如有侵权请联系本站删除!本站仅提供信息存储空间服务。