1 Folly: Facebook Open-source Library
2 -----------------------------------
4 Folly is an open-source C++ library developed and used at Facebook.
6 ###[Get Started](folly/docs/Overview.md)
8 Folly is published on Github at https://github.com/facebook/folly; for
9 discussions, there is a Google group at
10 https://groups.google.com/d/forum/facebook-folly.
15 folly requires gcc 4.8+ and a version of boost compiled with C++11 support.
17 Please download googletest from
18 https://googletest.googlecode.com/files/gtest-1.7.0.zip and unzip it in the
19 folly/test subdirectory.
24 This release is old, requiring many upgrades. However, since Travis CI runs
25 on 12.04, `folly/build/deps_ubuntu_12.04.sh` is provided, and upgrades all
26 the required packages.
31 The following packages are required (feel free to cut and paste the apt-get
35 sudo apt-get install \
43 libdouble-conversion-dev \
56 If advanced dubugging functionality for tests are required
59 sudo apt-get install \
68 The packages listed above for Ubuntu 13.10 are required, as well as:
71 sudo apt-get install \
75 The above packages are sufficient for Ubuntu 13.10 and Ubuntu 14.04.
77 In the folly directory, run
88 folly is available as a Formula and releases may be built via `brew install folly`.
90 You may also use `folly/build/bootstrap-osx-homebrew.sh` to build against `master`:
94 ./build/bootstrap-osx-homebrew.sh
101 Install the required packages from MacPorts:
120 Download and install double-conversion:
123 git clone https://github.com/google/double-conversion.git
125 cmake -DBUILD_SHARED_LIBS=ON .
130 Download and install folly with the parameters listed below:
133 git clone https://github.com/facebook/folly.git
136 ./configure CPPFLAGS="-I/opt/local/include" LDFLAGS="-L/opt/local/lib"
141 Other Linux distributions
142 -------------------------
144 - double-conversion (https://github.com/google/double-conversion)
146 Download and build double-conversion.
147 You may need to tell configure where to find it.
149 [double-conversion/] `ln -s src double-conversion`
151 [folly/] `./configure LDFLAGS=-L$DOUBLE_CONVERSION_HOME/ CPPFLAGS=-I$DOUBLE_CONVERSION_HOME/`
153 [folly/] `LD_LIBRARY_PATH=$DOUBLE_CONVERSION_HOME/ make`
155 - additional platform specific dependencies:
172 - double-conversion-devel