| Randy Abernethy | 9c50e4a | 2016-02-14 17:44:07 -0800 | [diff] [blame] | 1 | ## Debian/Ubuntu install |
| Randy Abernethy | 833236f | 2016-02-13 17:30:20 -0800 | [diff] [blame] | 2 | The 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 Meier | e9f00cb | 2014-05-30 14:35:34 +0200 | [diff] [blame] | 3 | |
| Jens Geyer | 152d1be | 2017-11-30 21:04:05 +0100 | [diff] [blame] | 4 | sudo apt-get install automake bison flex g++ git libboost-all-dev libevent-dev libssl-dev libtool make pkg-config |
| Roger Meier | e9f00cb | 2014-05-30 14:35:34 +0200 | [diff] [blame] | 5 | |
| Randy Abernethy | 833236f | 2016-02-13 17:30:20 -0800 | [diff] [blame] | 6 | Debian 7/Ubuntu 12 users need to manually install a more recent version of automake and (for C++ library and test support) boost: |
| Roger Meier | 81a1f99 | 2014-10-22 14:09:43 +0200 | [diff] [blame] | 7 | |
| Randy Abernethy | 833236f | 2016-02-13 17:30:20 -0800 | [diff] [blame] | 8 | 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 Abernethy | 9c50e4a | 2016-02-14 17:44:07 -0800 | [diff] [blame] | 11 | 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 Meier | e9f00cb | 2014-05-30 14:35:34 +0200 | [diff] [blame] | 15 | |
| 16 | ## Optional packages |
| 17 | |
| Randy Abernethy | 833236f | 2016-02-13 17:30:20 -0800 | [diff] [blame] | 18 | If 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 Meier | e9f00cb | 2014-05-30 14:35:34 +0200 | [diff] [blame] | 19 | |
| Randy Abernethy | 833236f | 2016-02-13 17:30:20 -0800 | [diff] [blame] | 20 | * Java |
| Jiayu Liu | d40dd72 | 2023-10-19 08:37:49 +0800 | [diff] [blame] | 21 | * packages: gradle (version 8.4) |
| Beluga Behr | 99f673a | 2018-12-30 22:10:00 -0500 | [diff] [blame] | 22 | * You will also need Java JDK v1.8 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 Abernethy | 833236f | 2016-02-13 17:30:20 -0800 | [diff] [blame] | 23 | * Ruby |
| Jens Geyer | 152d1be | 2017-11-30 21:04:05 +0100 | [diff] [blame] | 24 | * ruby-full ruby-dev ruby-rspec rake rubygems bundler |
| Roger Meier | e9f00cb | 2014-05-30 14:35:34 +0200 | [diff] [blame] | 25 | * 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 Geyer | 152d1be | 2017-11-30 21:04:05 +0100 | [diff] [blame] | 34 | * erlang-base erlang-eunit erlang-dev rebar |
| Jens Geyer | 56700e4 | 2020-02-22 16:51:51 +0100 | [diff] [blame] | 35 | * NetStd |
| Jens Geyer | 4c7b9fd | 2021-12-04 22:48:37 +0100 | [diff] [blame] | 36 | * apt-transport-https dotnet-sdk-6.0 aspnetcore-runtime-6.0 |
| Roger Meier | e9f00cb | 2014-05-30 14:35:34 +0200 | [diff] [blame] | 37 | * Thrift Compiler for Windows |
| Jens Geyer | 152d1be | 2017-11-30 21:04:05 +0100 | [diff] [blame] | 38 | * mingw-w64 mingw-w64-x86-64-dev nsis |
| 39 | * Rust |
| 40 | * rustc cargo |
| 41 | * Haxe |
| 42 | * haxe |
| 43 | * Lua |
| 44 | * lua5.3 liblua5.3-dev |
| 45 | * NodeJs |
| 46 | * nodejs npm |
| 47 | * dotnetcore |
| 48 | * https://www.microsoft.com/net/learn/get-started/linuxubuntu |
| 49 | * d-lang |
| 50 | * curl -fsS https://dlang.org/install.sh | bash -s dmd |
| 51 | * dart & pub |
| 52 | * https://www.dartlang.org/install/linux |
| 53 | * https://www.dartlang.org/tools/pub/installing |
| Jiayu Liu | 23b8636 | 2022-05-06 12:42:18 +0800 | [diff] [blame] | 54 | |
| Roger Meier | e9f00cb | 2014-05-30 14:35:34 +0200 | [diff] [blame] | 55 | |
| 56 | ## Additional reading |
| 57 | |
| 58 | For more information on the requirements see: [Apache Thrift Requirements](/docs/install) |
| 59 | |
| 60 | For more information on building and installing Thrift see: [Building from source](/docs/BuildingFromSource) |