]> git.ipfire.org Git - thirdparty/pdns.git/blame - README.md
Merge pull request #3704 from rgacogne/dnsdist-beta1-changelog
[thirdparty/pdns.git] / README.md
CommitLineData
2b1c8d9a 1PowerDNS is copyright © 2002-2016 by PowerDNS.COM BV and lots of
79a0f9ff
CH
2contributors, using the GNU GPLv2 license (see NOTICE for the
3exact license and exception used).
bdbf07f0 4
48cfdbc4 5All documentation can be found on http://doc.powerdns.com/
6
1d329048 7This file may lag behind at times. For most recent updates, always check
f778b0f4 8https://doc.powerdns.com/md/changelog/.
1d329048
BH
9
10Another good place to look for information is:
75c698a7 11https://doc.powerdns.com/md/appendix/compiling-powerdns/
1d329048 12
2847a0d2 13To file bugs, head towards:
7d7b7179 14https://github.com/PowerDNS/pdns/issues
2847a0d2 15
7d7b7179 16But please check if the issue is already reported there first.
da5d2b0f 17
48cfdbc4 18SOURCE CODE / GIT
19-----------------
20
21Source code is available on GitHub:
22
23 $ git clone https://github.com/PowerDNS/pdns.git
24
25This repository contains the sources both for the PowerDNS Recursor and for PowerDNS Authoritative Server,
56081b8e 26and both can be built from this repository. Both are released separately as .tar.bz2, .deb and .rpm however!
48cfdbc4 27
28COMPILING Authoritative Server
29------------------------------
30PowerDNS Authoritative Server 3.0 and beyond depend on Boost.
da82f61d 31
48cfdbc4 32On Debian 7.0, the following is useful:
1d329048 33
ba35e82b 34 apt-get install autoconf automake bison flex g++ git libboost-all-dev libtool make pkg-config ragel libmysqlclient-dev
3869cd3b
CH
35
36If you build from git, first build configure:
37
38 $ ./bootstrap
39
40(You may need to do that twice. You also need libtool-1.4, 1.3 won't work.
97082398 41Autoconf 2.61 or newer and Automake 1.11 or newer are required, too.)
3869cd3b 42
d022a079 43To compile a very clean version, use:
2e938e5d 44
48cfdbc4 45 $ ./configure --with-modules="" --without-lua
7d7b7179
JC
46 $ make
47 # make install
2e938e5d 48
4486aaac 49This generates a PowerDNS Authoritative Server binary with no modules built in.
1d329048 50
4486aaac 51When `./configure` is run without `--with-modules`, the bind and gmysql module are
1d329048 52built-in by default and the pipe-backend is compiled for runtime loading.
2e938e5d
BH
53
54To add multiple modules, try:
55
4486aaac 56 $ ./configure --with-modules="bind gmysql gpgsql"
2e938e5d 57
48cfdbc4 58See http://doc.powerdns.com/compiling-powerdns.html for more details.
343546e5 59
48cfdbc4 60COMPILING THE RECURSOR
61----------------------
52647d55 62The portable, and supported, way to build the recursor is:
bdc9f8d2 63
52647d55
H
64 $ cd pdns/recursordist
65 $ ./bootstrap
66 $ ./configure
67 $ make
68 # make install
69
70You need `autoconf`, `libtool` and `automake` installed to bootstrap it.
71Furthermore, when building from git `boost`, `pandoc`, `ragel` and `zip` are build dependencies.
e291c62e 72
343546e5
BH
73SOLARIS NOTES
74-------------
843aae1e 75Use a recent gcc. OpenCSW is a good source, as is Solaris 11 IPS.
152b4591 76
48cfdbc4 77If you encounter problems with the Solaris make, gmake is advised.
343546e5
BH
78
79FREEBSD NOTES
80-------------
48cfdbc4 81You need to compile using gmake - regular make only appears to work, but doesn't in fact. Use gmake, not make.
5088e8bc 82
7d7b7179
JC
83MAC OS X NOTES
84--------------
43a2814f 85PowerDNS Authoritative Server is available through Homebrew:
7d7b7179
JC
86
87 $ brew install pdns
88
89If you want to compile yourself, the dependencies can be installed using
90Homebrew:
91
cb4bdee7 92 $ brew install boost lua pkg-config ragel
7d7b7179
JC
93
94For PostgreSQL support:
95
96 $ brew install postgresql
97
98For MySQL support:
99
100 $ brew install mariadb
101
343546e5
BH
102LINUX NOTES
103-----------
104None really.