From: Chris Hofstaedtler Date: Sun, 26 Nov 2017 22:50:52 +0000 (+0100) Subject: Update/add macOS compilation notes X-Git-Tag: dnsdist-1.3.0~217^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b1b2586e6d9f3c10242036696f332f0e3ff9454b;p=thirdparty%2Fpdns.git Update/add macOS compilation notes --- diff --git a/README.md b/README.md index 7fd20b83ae..eba419fa31 100644 --- a/README.md +++ b/README.md @@ -71,32 +71,32 @@ See https://doc.powerdns.com/md/appendix/compiling-powerdns/ for more details. If you run into C++11-related symbol trouble, please try passing `CPPFLAGS=-D_GLIBCXX_USE_CXX11_ABI=0` (or 1) to `./configure` to make sure you are compatible with the installed dependencies. -On macOS, you may need to `brew install openssl` and set `PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig` during configure. - -COMPILING THE RECURSOR +Compiling the Recursor ---------------------- See the README in pdns/recursordist. -COMPILING DNSDIST ----------------------- +Compiling dnsdist +----------------- See the README in pdns/dnsdistdist. -SOLARIS NOTES +Solaris Notes ------------- Use a recent gcc. OpenCSW is a good source, as is Solaris 11 IPS. If you encounter problems with the Solaris make, gmake is advised. -FREEBSD NOTES +FreeBSD Notes ------------- You need to compile using gmake - regular make only appears to work, but doesn't in fact. Use gmake, not make. The clang compiler installed through FreeBSD's package manager does not expose all of the C++11 features needed under `std=gnuc++11`. Force the compiler to use `std=c++11` mode instead. - export CXXFLAGS=-std=c++11 +``` +$ export CXXFLAGS=-std=c++11 +``` -MAC OS X NOTES --------------- +macOS Notes +----------- PowerDNS Authoritative Server is available through Homebrew: ``` @@ -104,24 +104,17 @@ $ brew install pdns ``` If you want to compile yourself, the dependencies can be installed using -Homebrew: +Homebrew. You need to tell configure where to find OpenSSL, too. ``` -$ brew install boost lua pkg-config ragel +$ brew install boost lua pkg-config ragel openssl +$ ./configure --with-modules="" --with-lua PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig +$ make -j4 ``` -For PostgreSQL support: - -``` -$ brew install postgresql -``` - -For MySQL support: - -``` -$ brew install mariadb -``` +Additionally, for PostgreSQL support, run `brew install postgresql` and add `--with-modules="gpsql"` to `./configure`. +For MySQL support, run `brew install mariadb` and add `--with-modules="gmysql"` to `./configure`. -LINUX NOTES +Linux notes ----------- None really. diff --git a/pdns/README-dnsdist.md b/pdns/README-dnsdist.md index 2f9b99929f..44083e909a 100644 --- a/pdns/README-dnsdist.md +++ b/pdns/README-dnsdist.md @@ -8,3 +8,19 @@ runtime, and that its statistics can be queried from a console-like interface. All `dnsdist` features are documented at [dnsdist.org](http://dnsdist.org). + +## macOS Notes + +Install dependencies from Homebrew: + +``` +$ brew install autoconf automake boost libedit libsodium libtool lua pkg-config protobuf +``` + +Bootstrap and let configure know where to find libedit: + +``` +$ ./bootstrap +$ ./configure --with-lua 'PKG_CONFIG_PATH=/usr/local/opt/libedit/lib/pkgconfig +$ make +```