blob: 0ebe77c7110467b0faddf4e4ef37db69fe0406ee [file] [log] [blame] [view]
Roger Meiere9f00cb2014-05-30 14:35:34 +02001
2## Basic requirements
3* A relatively POSIX-compliant *NIX system
Jens Geyerb26c0b82015-05-19 23:53:36 +02004 * Cygwin or MinGW can be used on Windows (but there are better options, see below)
Roger Meiere9f00cb2014-05-30 14:35:34 +02005* g++ 4.2
James E. King IIIee8caca2019-05-04 08:20:59 -04006* boost 1.56.0
Roger Meiere9f00cb2014-05-30 14:35:34 +02007* Runtime libraries for lex and yacc might be needed for the compiler.
8
9## Requirements for building from source
Jiayu Liu92b007f2022-10-14 13:16:18 +080010* GNU build tools:
Roger Meiere9f00cb2014-05-30 14:35:34 +020011 * autoconf 2.65
Roger Meier81a1f992014-10-22 14:09:43 +020012 * automake 1.13
Roger Meiere9f00cb2014-05-30 14:35:34 +020013 * libtool 1.5.24
14* pkg-config autoconf macros (pkg.m4)
15* lex and yacc (developed primarily with flex and bison)
16* libssl-dev
17
Jens Geyerb26c0b82015-05-19 23:53:36 +020018## Requirements for building the compiler from source on Windows
19* Visual Studio C++
20* Flex and Bison (e.g. the WinFlexBison package)
21
Roger Meiere9f00cb2014-05-30 14:35:34 +020022## Language requirements
23These are only required if you choose to build the libraries for the given language
24
25* C++
James E. King IIIee8caca2019-05-04 08:20:59 -040026 * Boost 1.56.0
Roger Meiere9f00cb2014-05-30 14:35:34 +020027 * libevent (optional, to build the nonblocking server)
28 * zlib (optional)
Zezeng Wangb416ffa2020-04-27 15:18:26 +080029 * Qt (optional)
Roger Meiere9f00cb2014-05-30 14:35:34 +020030* Java
Jiayu Liube73a572023-04-14 11:02:43 +080031 * Java 17 (latest LTS)
Jiayu Liud40dd722023-10-19 08:37:49 +080032 * Gradle 8.4
Roger Meiere9f00cb2014-05-30 14:35:34 +020033* C#: Mono 1.2.4 (and pkg-config to detect it) or Visual Studio 2005+
34* Python 2.6 (including header files for extension modules)
vladimir.panivkof6927022024-02-24 17:12:10 +010035* PHP 7.1 (optionally including header files for extension modules)
Roger Meiere9f00cb2014-05-30 14:35:34 +020036* Ruby 1.8
37 * bundler gem
38* Erlang R12 (R11 works but not recommended)
39* Perl 5
40 * Bit::Vector
41 * Class::Accessor
Jens Geyerb26c0b82015-05-19 23:53:36 +020042* Haxe 3.1.3
taozlec0d384a2017-07-17 18:40:42 +020043* Go 1.4
Jens Geyerb26c0b82015-05-19 23:53:36 +020044* Delphi 2010