blob: a76934e30cefb7893724adb7b446705b666121d0 [file] [log] [blame] [view]
Roger Meiere9f00cb2014-05-30 14:35:34 +02001## Debian or Ubuntu setup
Randy Abernethy833236f2016-02-13 17:30:20 -08002The following command will install tools and libraries required to build and install the Apache Thrift compiler and C++ libraries on a Debian/Ubuntu Linux based system.
Roger Meiere9f00cb2014-05-30 14:35:34 +02003
Randy Abernethy833236f2016-02-13 17:30:20 -08004 sudo apt-get install libboost-dev libboost-test-dev libboost-program-options-dev libboost-system-dev libboost-filesystem-dev libevent-dev automake libtool flex bison pkg-config g++ libssl-dev libboost-thread-dev make
Roger Meiere9f00cb2014-05-30 14:35:34 +02005
Randy Abernethy833236f2016-02-13 17:30:20 -08006You will want to add the git package to the list above if you plan to clone the Apache Thrift source code repository.
Roger Meiere9f00cb2014-05-30 14:35:34 +02007
Randy Abernethy833236f2016-02-13 17:30:20 -08008Debian 7/Ubuntu 12 users need to manually install a more recent version of automake and (for C++ library and test support) boost:
Roger Meier81a1f992014-10-22 14:09:43 +02009
Randy Abernethy833236f2016-02-13 17:30:20 -080010 wget http://ftp.debian.org/debian/pool/main/a/automake-1.15/automake_1.15-3_all.deb
11 sudo dpkg -i automake_1.15-3_all.deb
12
13 wget http://sourceforge.net/projects/boost/files/boost/1.60.0/boost_1_60_0.tar.gz tar xvf boost_1_60_0.tar.gz
14 cd boost_1_60_0
15 ./bootstrap.sh
16 sudo ./b2 install
Roger Meiere9f00cb2014-05-30 14:35:34 +020017
18## Optional packages
19
Randy Abernethy833236f2016-02-13 17:30:20 -080020If you would like to build Apache Thrift libraries for other programming languages you may need to install additional packages. The following languages require the specified additional packages:
Roger Meiere9f00cb2014-05-30 14:35:34 +020021
Randy Abernethy833236f2016-02-13 17:30:20 -080022 * Java
23 * To build Apache Thrift support for Java you will need to install the ant package and Java JDK v1.7 or higher. Type **javac** to see a list of available packages, pick the one you prefer and **apt-get install** it (e.g. openjdk-7-jdk).
24 * Ruby
Roger Meiere9f00cb2014-05-30 14:35:34 +020025 * ruby-full ruby-dev ruby-rspec rake rubygems libdaemons-ruby libgemplugin-ruby mongrel
26 * Python
27 * python-all python-all-dev python-all-dbg
28 * Perl
29 * libbit-vector-perl libclass-accessor-class-perl
30 * Php, install
31 * php5-dev php5-cli phpunit
32 * C_glib
33 * libglib2.0-dev
34 * Erlang
35 * erlang-base erlang-eunit erlang-dev
36 * Csharp
37 * mono-gmcs mono-devel libmono-system-web2.0-cil nunit nunit-console
38 * Haskell
39 * ghc6 cabal-install libghc6-binary-dev libghc6-network-dev libghc6-http-dev
40 * Thrift Compiler for Windows
Roger Meier87202602014-08-15 22:16:02 +020041 * mingw32 mingw32-binutils mingw32-runtime nsis
Roger Meiere9f00cb2014-05-30 14:35:34 +020042
43
44## Additional reading
45
46For more information on the requirements see: [Apache Thrift Requirements](/docs/install)
47
48For more information on building and installing Thrift see: [Building from source](/docs/BuildingFromSource)