reddit/folly

Name: folly

Owner: Reddit

Description: An open-source C++ library developed and used at Facebook.

Created: 2015-08-27 19:13:56.0

Updated: 2015-11-19 19:07:00.0

Pushed: 2015-11-19 19:09:25.0

Homepage: https://groups.google.com/forum/?fromgroups#!forum/facebook-folly

Size: 7155

Language: C++

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Folly: Facebook Open-source Library

Folly is an open-source C++ library developed and used at Facebook.

Get Started

Folly is published on Github at https://github.com/facebook/folly; for discussions, there is a Google group at https://groups.google.com/d/forum/facebook-folly.

Dependencies

folly requires gcc 4.8+ and a version of boost compiled with C++11 support.

Please download googletest from https://googletest.googlecode.com/files/gtest-1.7.0.zip and unzip it in the folly/test subdirectory.

Ubuntu 12.04

This release is old, requiring many upgrades. However, since Travis CI runs on 12.04, folly/build/deps_ubuntu_12.04.sh is provided, and upgrades all the required packages.

Ubuntu 13.10

The following packages are required (feel free to cut and paste the apt-get command below):

 apt-get install \
g++ \
automake \
autoconf \
autoconf-archive \
libtool \
libboost-all-dev \
libevent-dev \
libdouble-conversion-dev \
libgoogle-glog-dev \
libgflags-dev \
liblz4-dev \
liblzma-dev \
libsnappy-dev \
make \
zlib1g-dev \
binutils-dev \
libjemalloc-dev \
libssl-dev
Ubuntu 14.04 LTS

The packages listed above for Ubuntu 13.10 are required, as well as:

 apt-get install \
libiberty-dev

The above packages are sufficient for Ubuntu 13.10 and Ubuntu 14.04.

In the folly directory, run

toreconf -ivf
configure
ke
ke check
do make install
OS X (Homebrew)

folly is available as a Formula and releases may be built via brew install folly.

You may also use folly/build/bootstrap-osx-homebrew.sh to build against master:

 folly
build/bootstrap-osx-homebrew.sh
ke
ke check
OS X (MacPorts)

Install the required packages from MacPorts:

do port install \
autoconf \
automake \
boost \
gflags \
git \
google-glog \
libevent \
libtool \
lz4 \
lzma \
scons \
snappy \
zlib

Download and install double-conversion:

t clone https://github.com/google/double-conversion.git
 double-conversion
ake -DBUILD_SHARED_LIBS=ON .
ke
do make install

Download and install folly with the parameters listed below:

t clone https://github.com/facebook/folly.git
 folly/folly
toreconf -ivf
configure CPPFLAGS="-I/opt/local/include" LDFLAGS="-L/opt/local/lib"
ke
do make install
Other Linux distributions

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.