The problem seems to be that the dub.sdl of the datadogd package
specifies targetType "none", which will cause it to not be included in
the build at all. I'd usually recommend to use the generic targetType <br>"library".

BTW, you should ideally also use license "GPL-2.0" instead of "GPL 2".
Currently this information isn't used for anything but displaying it on
the package's overview page, so it doesn't really matter, but later we
might add a feature that automatically warns about license
incompatibilities.

http://code.dlang.org/getting_started contains a very humble attempt
at a step-by-step guide, but could be improved in many ways and doesn't
really mention common pitfalls.

I tried that now.
I have now changed dub.sdl to have TargetType "library" but when I use it as part of my project though, it appears to generate a dub.json in the ~/.dub/packages/... folder and not a dub.sdl.
I assume that's correct, but it doesn't appear to be picking up the changes I made to the dub.sdl and updating the dub.json.

However to test that your suggestion was the issue, I then went into the ~/.dub/packages/datadogd-0.1.0/dub.json and manually changed it to have "TargetType": "library" and it seems to work (now it's just my coding that's the problem :P )

I'll revert to using dub.json instead of dub.sdl for the time being, and purge the dub.sdl from my github.

Thanks for the help.