]>
Commit | Line | Data |
---|---|---|
7d7b7179 JC |
1 | PowerDNS is copyright Ⓒ 2012-2013 by PowerDNS.COM BV & lots of |
2 | contributors, using the GNU GPLv2 license. | |
bdbf07f0 | 3 | |
1d329048 | 4 | This file may lag behind at times. For most recent updates, always check |
951b5a77 | 5 | http://doc.powerdns.com/changelog.html and http://wiki.powerdns.com |
1d329048 BH |
6 | |
7 | Another good place to look for information is: | |
8 | http://doc.powerdns.com/compiling-powerdns.html | |
9 | ||
2847a0d2 | 10 | To file bugs, head towards: |
7d7b7179 | 11 | https://github.com/PowerDNS/pdns/issues |
2847a0d2 | 12 | |
7d7b7179 | 13 | But please check if the issue is already reported there first. |
da5d2b0f | 14 | |
1d329048 BH |
15 | COMPILING |
16 | --------- | |
da82f61d | 17 | PowerDNS 3.0 and beyond depend on Lua and Boost. To get these libraries, |
7d7b7179 | 18 | install the relevant packages. On Debian and Ubuntu, try: |
da82f61d | 19 | |
7d7b7179 JC |
20 | # apt-get install g++ libboost-program-options-dev \ |
21 | libboost-serialization-dev libpqclient-dev libmysqlclient-dev \ | |
22 | libsqlite3-dev libpq-dev | |
1d329048 | 23 | |
d022a079 | 24 | To compile a very clean version, use: |
2e938e5d | 25 | |
7d7b7179 JC |
26 | $ ./configure --with-modules="" |
27 | $ make | |
28 | # make install | |
2e938e5d BH |
29 | |
30 | This generates a PowerDNS binary with no modules, except the bind backend, | |
1d329048 BH |
31 | built in, and the pipe-backend available for runtime loading. |
32 | ||
33 | When ./configure is run without --with-modules, the gmysql module is | |
34 | built-in by default and the pipe-backend is compiled for runtime loading. | |
2e938e5d BH |
35 | |
36 | To add multiple modules, try: | |
37 | ||
7d7b7179 | 38 | $ ./configure --with-modules="gmysql gpgsql" |
2e938e5d | 39 | |
343546e5 BH |
40 | See http://rtfm.powerdns.com/compiling-powerdns.html for more details. |
41 | ||
1d329048 | 42 | Please don't use the 'mysql' backend, it is deprecated. Use the 'gmysql' |
7d7b7179 JC |
43 | one! |
44 | ||
45 | SOURCE CODE / GIT | |
46 | ----------------- | |
47 | ||
48 | Source code is available on GitHub: | |
e5e9d0b4 | 49 | |
7d7b7179 | 50 | $ git clone https://github.com/PowerDNS/pdns.git |
bdc9f8d2 | 51 | |
343546e5 BH |
52 | SOLARIS NOTES |
53 | ------------- | |
178d5134 BH |
54 | You need gcc 3.x, preferably 3.2! The 'Sunpro' compiler is currently not |
55 | supported (patches are welcome if not too intrusive). | |
152b4591 | 56 | |
343546e5 BH |
57 | If you encounter problems with the Solaris make, gmake is advised |
58 | ||
1d329048 BH |
59 | IPv6 is broken in Solaris 2.7, use 2.8 or higher for that. PowerDNS on |
60 | Solaris 2.7 won't even serve AAAA records. | |
343546e5 BH |
61 | |
62 | FREEBSD NOTES | |
63 | ------------- | |
1d329048 BH |
64 | gcc 2.95.x works. You need to compile using gmake - regular make only |
65 | appears to work, but doesn't in fact. Use gmake, not make. | |
343546e5 | 66 | |
5088e8bc BH |
67 | pipebackend does not work due to bad interaction between fork and pthreads. |
68 | Amazingly, running the Linux version under the linuxulator DOES work! | |
69 | ||
7d7b7179 JC |
70 | MAC OS X NOTES |
71 | -------------- | |
72 | ||
73 | PowerDNS is available through Homebrew: | |
74 | ||
75 | $ brew install pdns | |
76 | ||
77 | If you want to compile yourself, the dependencies can be installed using | |
78 | Homebrew: | |
79 | ||
80 | $ brew install boost lua ragel | |
81 | ||
82 | For PostgreSQL support: | |
83 | ||
84 | $ brew install postgresql | |
85 | ||
86 | For MySQL support: | |
87 | ||
88 | $ brew install mariadb | |
89 | ||
343546e5 BH |
90 | LINUX NOTES |
91 | ----------- | |
92 | None really. | |
12e6d4a9 | 93 | |
e5e9d0b4 BH |
94 | WIN32 NOTES |
95 | ----------- | |
7d7b7179 | 96 | See http://rtfm.powerdns.com/compiling-powerdns.html#ON-WINDOWS |
e5e9d0b4 BH |
97 | |
98 | Needs Visual C++ | |
99 | ||
12e6d4a9 BH |
100 | --- |
101 | ||
102 | After compiling, you may find the file 'pdns/pdns' helpful, we suggest you | |
103 | place it in /etc/init.d/ or your operating system's equivalent. | |
104 |