blob: 83090ab336faabaaa78814280c0348a6f2676bde [file] [log] [blame] [view]
Randy Abernethy9c50e4a2016-02-14 17:44:07 -08001## Debian/Ubuntu install
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
Jens Geyer152d1be2017-11-30 21:04:05 +01004 sudo apt-get install automake bison flex g++ git libboost-all-dev libevent-dev libssl-dev libtool make pkg-config
Roger Meiere9f00cb2014-05-30 14:35:34 +02005
Randy Abernethy833236f2016-02-13 17:30:20 -08006Debian 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 +02007
Randy Abernethy833236f2016-02-13 17:30:20 -08008 wget http://ftp.debian.org/debian/pool/main/a/automake-1.15/automake_1.15-3_all.deb
9 sudo dpkg -i automake_1.15-3_all.deb
10
Randy Abernethy9c50e4a2016-02-14 17:44:07 -080011 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
12 cd boost_1_60_0
13 ./bootstrap.sh
14 sudo ./b2 install
Roger Meiere9f00cb2014-05-30 14:35:34 +020015
16## Optional packages
17
Randy Abernethy833236f2016-02-13 17:30:20 -080018If 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 +020019
Randy Abernethy833236f2016-02-13 17:30:20 -080020 * Java
Jens Geyer152d1be2017-11-30 21:04:05 +010021 * packages: ant
22 * You will also need 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. default-jdk).
Randy Abernethy833236f2016-02-13 17:30:20 -080023 * Ruby
Jens Geyer152d1be2017-11-30 21:04:05 +010024 * ruby-full ruby-dev ruby-rspec rake rubygems bundler
Roger Meiere9f00cb2014-05-30 14:35:34 +020025 * Python
26 * python-all python-all-dev python-all-dbg
27 * Perl
28 * libbit-vector-perl libclass-accessor-class-perl
29 * Php, install
30 * php5-dev php5-cli phpunit
31 * C_glib
32 * libglib2.0-dev
33 * Erlang
Jens Geyer152d1be2017-11-30 21:04:05 +010034 * erlang-base erlang-eunit erlang-dev rebar
Roger Meiere9f00cb2014-05-30 14:35:34 +020035 * Csharp
36 * mono-gmcs mono-devel libmono-system-web2.0-cil nunit nunit-console
37 * Haskell
Jens Geyer152d1be2017-11-30 21:04:05 +010038 * ghc cabal-install libghc-binary-dev libghc-network-dev libghc-http-dev
Roger Meiere9f00cb2014-05-30 14:35:34 +020039 * Thrift Compiler for Windows
Jens Geyer152d1be2017-11-30 21:04:05 +010040 * mingw-w64 mingw-w64-x86-64-dev nsis
41 * Rust
42 * rustc cargo
43 * Haxe
44 * haxe
45 * Lua
46 * lua5.3 liblua5.3-dev
47 * NodeJs
48 * nodejs npm
49 * dotnetcore
50 * https://www.microsoft.com/net/learn/get-started/linuxubuntu
51 * d-lang
52 * curl -fsS https://dlang.org/install.sh | bash -s dmd
53 * dart & pub
54 * https://www.dartlang.org/install/linux
55 * https://www.dartlang.org/tools/pub/installing
56
Roger Meiere9f00cb2014-05-30 14:35:34 +020057
58## Additional reading
59
60For more information on the requirements see: [Apache Thrift Requirements](/docs/install)
61
62For more information on building and installing Thrift see: [Building from source](/docs/BuildingFromSource)