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