Coder Social home page Coder Social logo

yaslama / folly Goto Github PK

View Code? Open in Web Editor NEW

This project forked from facebook/folly

0.0 2.0 0.0 7.07 MB

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

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

License: Apache License 2.0

C++ 99.19% C 0.54% Shell 0.06% Python 0.16% Makefile 0.01% CSS 0.01% Ruby 0.03%

folly's Introduction

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

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

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:

  cd folly
  ./build/bootstrap-osx-homebrew.sh
  make
  make check

OS X (MacPorts)

Install the required packages from MacPorts:

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

Download and install double-conversion:

  git clone https://github.com/google/double-conversion.git
  cd double-conversion
  cmake -DBUILD_SHARED_LIBS=ON .
  make
  sudo make install

Download and install folly with the parameters listed below:

  git clone https://github.com/facebook/folly.git
  cd folly/folly
  autoreconf -ivf
  ./configure CPPFLAGS="-I/opt/local/include" LDFLAGS="-L/opt/local/lib"
  make
  sudo make install

Other Linux distributions

  • double-conversion (https://github.com/google/double-conversion)

    Download and build double-conversion. You may need to tell configure where to find it.

    [double-conversion/] ln -s src double-conversion

    [folly/] ./configure LDFLAGS=-L$DOUBLE_CONVERSION_HOME/ CPPFLAGS=-I$DOUBLE_CONVERSION_HOME/

    [folly/] LD_LIBRARY_PATH=$DOUBLE_CONVERSION_HOME/ make

  • additional platform specific dependencies:

    Fedora 21 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
    • double-conversion-devel
    • openssl-devel
    • libevent-devel

folly's People

Contributors

tudor avatar fugalh avatar gownta avatar ddrcoder avatar yfeldblum avatar philippv avatar meyering avatar sgolemon avatar hannesr0 avatar orvid avatar simpkins avatar andriigrynenko avatar luciang avatar scannell avatar andrewjcg avatar jdelong avatar snarkmaster avatar w-o-o avatar alikhtarov avatar ot avatar dcsommer avatar afrind avatar mhorowitz avatar andreazevedo avatar cppfool avatar sarangbh avatar viswanathgs avatar marcinpe avatar siyengar avatar bmaurer avatar

Watchers

Yaacov Akiba Slama avatar James Cloos 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.