+ * A working dynamic library system
+ * A working lex and yacc - flex and bison should work
+
+# platforms
+
+Charybdis is designed with portability in mind, but does not target older systems nor those of solely academic
+interest.
+
+Do note that operating systems are only supported if they are supported by their vendor.
+
+## Tier 1
+
+These platforms are the best supported, and should always work. They are actively tested. If you encounter
+problems, please file a bug.
+
+* FreeBSD 10.x and above (i386 and amd64)
+* Linux 2.6.x and above with glibc or musl (i386, x86_64, and ARM)
+* macOS 10.7 and above
+* Windows Vista/Server 2008 and above (x86 or x64)
+
+## Tier 2
+
+These platforms are supported and occasionally tested, and most features should work, but this is not
+guaranteed. If you find any problems, file a bug, but as these are not regularly tested platforms, a timely
+resolution may not be possible.
+
+* DragonflyBSD 4.4 and above (i386)
+* Linux with uClibc (i386 or x86_64)
+* NetBSD 6.1.x and above (i386, amd64)
+* OpenBSD 5.6 and above (i386, amd64)
+* Solaris 10 and above (i386)
+
+## Tier 3
+
+Anything else that hasn't been tested. Charybdis may or may not work on it; patches welcome if they don't.
+
+# platform specific errata
+
+These are known issues and workarounds for supported platforms.
+
+ * **macOS**: you must set the `LIBTOOLIZE` environment variable to point to glibtoolize before running autogen.sh:
+
+ ```bash
+ brew install libtool
+ export LIBTOOLIZE="/usr/local/bin/glibtoolize"
+ ./autogen.sh
+ ```
+
+ * **FreeBSD**: if you are compiling with ipv6 you may experience
+ problems with ipv4 due to the way the socket code is written. To
+ fix this you must: "sysctl net.inet6.ip6.v6only=0"
+
+ * **Solaris**: you may have to set your PATH to include /usr/gnu/bin and /usr/gnu/sbin before /usr/bin
+ and /usr/sbin. Solaris's default tools don't seem to play nicely with the configure script.
+
+# building from git
+
+We no longer supply a prebuilt configure script in git, due to use of automake and libtool causing problems.
+You will need to run `autogen.sh` to build the autotools files prior to building charybdis.