README revision 238104
1195534Sscottl
2230132SuqsContents: 
3238805Smav	REQUIREMENTS
4195534Sscottl	INSTALLATION
5195534Sscottl		libdns
6195534Sscottl		examples
7195534Sscottl		drill
8195534Sscottl	INFORMATION FOR SPECIFIC OPERATING SYSTEMS
9195534Sscottl		Mac OS X
10195534Sscottl		Solaris
11195534Sscottl	KNOWN ISSUES
12195534Sscottl		pyldns
13195534Sscottl        Your Support
14195534Sscottl
15195534SscottlProject page:
16195534Sscottlhttp://www.nlnetlabs.nl/ldns/
17195534SscottlOn that page you can also subscribe to the ldns mailing list.
18195534Sscottl
19195534Sscottl* Development 
20195534Sscottlldns is mainly developed on Linux and FreeBSD. It is regularly tested to
21195534Sscottlcompile on other systems like Solaris and Mac OS X.
22195534Sscottl
23195534SscottlREQUIREMENTS
24195534Sscottl- OpenSSL (Optional, but needed for features like DNSSEC)
25195534Sscottl- libpcap (Optional, but needed for examples/ldns-dpa)
26195534Sscottl- (GNU) libtool (in OSX, that's glibtool, not libtool)
27195534Sscottl- GNU make
28195534Sscottl
29195534SscottlINSTALLATION
30195534Sscottl1. Unpack the tarball
31195534Sscottl2. cd ldns-<VERSION>
32195534Sscottl3. ./configure
33195534Sscottl4. gmake (it needs gnu make to compile, on systems where GNU make is the
34195534Sscottl   default you can just use 'make')
35195534Sscottl5. sudo gmake install
36195534Sscottl6. Optional. (cd examples; ./configure; gmake), make example programs included.
37195534Sscottl7. Optional. (cd drill; ./configure; gmake; gmake install), to build drill.
38195534Sscottl
39195534SscottlYou can configure and compile it in a separate build directory.
40195534Sscottl
41195534Sscottl* Examples
42195534SscottlThere are some examples and dns related tools in the examples/ directory.
43195534SscottlThese can be built with:
44195534Sscottl1. cd examples/
45195534Sscottl2. ./configure [--with-ldns=<path to ldns installation or build>]
46195534Sscottl3. gmake
47195534Sscottl
48195534Sscottl* Drill
49195534SscottlDrill can be built with:
50195534Sscottl1. cd drill/
51195534Sscottl2. ./configure [--with-ldns=<path to ldns installation or build>]
52195534Sscottl3. gmake
53195534Sscottl
54195534SscottlNote that you need to set LD_LIBRARY_PATH if you want to run the binaries
55195534Sscottland you have not installed the library to a system directory. You can use
56195534Sscottlthe make target all-static for the examples to run them if you don't want to
57195534Sscottlinstall the library.
58195534Sscottl
59195534Sscottl
60195534Sscottl* Building from subversion repository
61195534Sscottl
62195534SscottlIf you are building from the repository you will need to have (gnu)
63195534Sscottlautotools like libtool and autoreconf installed. A list of all the commands
64195534Sscottlneeded to build everything can be found in README.svn. Note that the actual
65195534Sscottlcommands may be a little bit different on your machine. Most notable, you'll need to run libtoolize (or glibtoolize), if you skip this step, you'll get an error about missing config.sub.
66195534Sscottl
67195534Sscottl* Developers
68195534Sscottlldns is developed by the ldns team at NLnet Labs. This team currently
69195534Sscottlconsists of:
70195534Sscottl  o Willem Toorop
71195534Sscottl  o Wouter Wijngaards
72195534Sscottl  o Matthijs Mekking
73195534Sscottl
74195534SscottlFormer main developers:
75195534Sscottl  o Jelte Jansen
76195534Sscottl  o Miek Gieben
77195534Sscottl
78195534Sscottl* Credits
79195534SscottlWe have received patches from the following people, thanks!
80195534Sscottl  o Bedrich Kosata
81195534Sscottl  o Erik Rozendaal
82195534Sscottl  o H��kan Olsson
83195534Sscottl  o Jakob Schlyter
84195534Sscottl  o Paul Wouters
85195534Sscottl  o Simon Vallet
86195534Sscottl  o Ond��ej Sur��
87195534Sscottl
88195534Sscottl
89195534SscottlINFORMATION FOR SPECIFIC OPERATING SYSTEMS
90195534Sscottl
91195534SscottlMAC OS X
92195534Sscottl
93195534SscottlFor MACOSX 10.4 and later, it seems that you have to set the
94195534SscottlMACOSX_DEPLOYMENT_TARGET environment variable to 10.4 before running
95195534Sscottlmake. Apparently it defaults to 10.1.
96279963Smav
97195534SscottlThis appears to be a known problem in 10.2 to 10.4, see:
98195534Sscottlhttp://developer.apple.com/qa/qa2001/qa1233.html
99195534Sscottlfor more information.
100195534Sscottl
101195534Sscottl
102195534SscottlSOLARIS
103253647Smav
104195534SscottlIn Solaris multi-architecture systems (that have both 32-bit and
105195534Sscottl64-bit support), it can be a bit taxing to convince the system to
106195534Sscottlcompile in 64-bit mode. Jakob Schlyter has kindly contributed a build
107195534Sscottlscript that sets the right build and link options. You can find it in
108195534Sscottlcontrib/build-solaris.sh
109195534Sscottl
110195534SscottlKNOWN ISSUES
111195534Sscottl
112195534SscottlA complete list of currently known open issues can be found here:
113195534Sscottlhttp://www.nlnetlabs.nl/projects/ldns/bugs
114195534Sscottl
115195534Sscottl* pyldns
116195534SscottlCompiling pyldns produces many ``unused parameter'' warnings.  Those are
117195534Sscottlharmless and may safely be ignored.
118195534SscottlAlso when building with Swig which version is before 2.0.4, compiling
119195534Sscottlpyldns produces many ``missing initializer'' warnings. Those are harmless
120195534Sscottltoo.
121195534Sscottl
122220657SmavYour Support
123195534SscottlNLnet Labs offers all of its software products as open source, most are
124195534Sscottlpublished under a BDS license. You can download them, not only from the
125195534SscottlNLnet Labs website but also through the various OS distributions for
126195534Sscottlwhich NSD, ldns, and Unbound are packaged. We therefore have little idea
127195534Sscottlwho uses our software in production environments and have no direct ties
128195534Sscottlwith 'our customers'.
129195534Sscottl
130195534SscottlTherefore, we ask you to contact us at users@NLnetLabs.nl and tell us
131195534Sscottlwhether you use one of our products in your production environment,
132195534Sscottlwhat that environment looks like, and maybe even share some praise.
133195534SscottlWe would like to refer to the fact that your organization is using our
134279963Smavproducts. We will only do that if you explicitly allow us. In all other
135195534Sscottlcases we will keep the information you share with us to ourselves.
136195534Sscottl
137195534SscottlIn addition to the moral support you can also support us
138195534Sscottlfinancially. NLnet Labs is a recognized not-for-profit charity foundation
139195534Sscottlthat is chartered to develop open-source software and open-standards
140258173Smavfor the Internet. If you use our software to satisfaction please express
141195534Sscottlthat by giving us a donation. For small donations PayPal can be used. For
142195534Sscottllarger and regular donations please contact us at users@NLnetLabs.nl. Also
143195534Sscottlsee http://www.nlnetlabs.nl/labs/contributors/.
144195534Sscottl
145195534Sscottl