Thread overview
releasing a d program
Sep 13, 2014
Vlad Levenfeld
Sep 13, 2014
Vlad Levenfeld
Sep 17, 2014
Dicebot
September 13, 2014
Pardon my ignorance but I've really got no idea how this works -
I've got a program I've been building in D on Linux and I can
move it between Linux machines but only if I install all of the
dependencies (and modify some of the code). I want to release
something like a precompiled binary or installer package for
Windows, Mac, possibly Android, iPhone, etc. Just something for
testing, for now. Something that can just install and run without
stressing the user out. Where do I start?
September 13, 2014
Sorry this should have been on .learn. I'm writing from my phone.
September 17, 2014
On Saturday, 13 September 2014 at 22:37:05 UTC, Vlad Levenfeld wrote:
> Pardon my ignorance but I've really got no idea how this works -
> I've got a program I've been building in D on Linux and I can
> move it between Linux machines but only if I install all of the
> dependencies (and modify some of the code). I want to release
> something like a precompiled binary or installer package for
> Windows, Mac, possibly Android, iPhone, etc. Just something for
> testing, for now. Something that can just install and run without
> stressing the user out. Where do I start?

This actually may be a question much more appropriate to main D newsgroup than you think :) I am afraid there are no clear guidelines.

In my personal opinion you can't and shouldn't do that. It is not that different from releasing C or any other native application really - pretending portable releases are possible is just asking for some trouble, sooner or later. I have yet to see a single problem that tries to do that with satisfactory result.

For best compatibility between Linux distributions you should read about http://en.wikipedia.org/wiki/Linux_Standard_Base ; as for other operating system I doubt there can be anything better than sticking to official distribution guidelines for that platform.

I think best course of action is to simply make source code as cross-platform as possible (and document all assumptions) so that any interested party can provide a native package. But of course I am biased being one of inafamous linux package maintainers.