Git Product home page Git Product logo

folly's Introduction

Folly: Facebook Open-source LibrarY
-----------------------------------

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

For details, see folly/docs/Overview.md.

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.6.0.zip and unzip it in the
folly/test subdirectory.

Ubuntu 13.10
------------

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

sudo 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:

sudo apt-get install \
    libiberty-dev

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

In the folly directory, run
  autoreconf -ivf
  ./configure
  make
  make check
  sudo make install


Other Linux distributions
-------------------------

- double-conversion (http://code.google.com/p/double-conversion/)

    By default, the build tooling for double-conversion does not build
    any libraries, which folly requires.  To build the necessary libraries
    copy folly/SConstruct.double-conversion to your double-conversion
    source directory before building:

      [double-conversion/] scons -f SConstruct.double-conversion

    Then set CPPFLAGS/LDFLAGS so that folly can find your double-conversion
    build:

      [folly/] LDFLAGS=-L<double-conversion>/ CPPFLAGS=-I<double-conversion>/src/
        configure ...

- additional platform specific dependencies:

  Fedora 17 64-bit
    - gcc
    - gcc-c++
    - autoconf
    - autoconf-archive
    - automake
    - boost-devel
    - libtool
    - lz4-devel
    - lzma-devel
    - snappy-devel
    - zlib-devel
    - glog-devel
    - gflags-devel
    - scons (for double-conversion)

folly's People

Contributors

tudor avatar gownta avatar ddrcoder avatar fugalh avatar philippv avatar simpkins avatar jdelong avatar andrewjcg avatar meyering avatar scannell avatar luciang avatar hannesr0 avatar dcsommer avatar andriigrynenko avatar sgolemon avatar alikhtarov avatar oyamauchi avatar snarkmaster avatar ptarjan avatar yfeldblum avatar mdordal avatar mhorowitz avatar marcinpe avatar afrind avatar alandau avatar mshneer avatar sas avatar swtaarrs avatar watashi avatar yiding avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.