Re: Distribution of D apps

2016-01-21 Thread W.J. via Digitalmars-d-learn
On Wednesday, 20 January 2016 at 16:01:11 UTC, Dibyendu Majumdar 
wrote:

Hi,

I am trying to understand the options for distributing a D app 
to users. My assumption is that only the shared libraries and 
binaries need to be distributed, and I need to include the D 
libraries. Is this correct?


Thanks and Regards
Dibyendu


Hi,

On Linux you can use 'ldd' to print shared library dependencies.
On Windows you can use Dependency Walker.
On Mac there's likely a similar program.
Mind also that license terms for distributing libraries apply.




Re: Distribution of D apps

2016-01-21 Thread FreeSlave via Digitalmars-d-learn

On Thursday, 21 January 2016 at 13:26:15 UTC, W.J. wrote:
On Wednesday, 20 January 2016 at 16:01:11 UTC, Dibyendu 
Majumdar wrote:

Hi,

I am trying to understand the options for distributing a D app 
to users. My assumption is that only the shared libraries and 
binaries need to be distributed, and I need to include the D 
libraries. Is this correct?


Thanks and Regards
Dibyendu


Hi,

On Linux you can use 'ldd' to print shared library dependencies.
On Windows you can use Dependency Walker.
On Mac there's likely a similar program.
Mind also that license terms for distributing libraries apply.


OS X has otool -L

Note that these tools don't show runtime dependencies. Many 
libraries can be loaded at runtime, especially when you use 
derelict-like modules. These libraries in their turn may depend 
on others, etc.


Re: Distribution of D apps

2016-01-21 Thread W.J. via Digitalmars-d-learn

On Thursday, 21 January 2016 at 14:03:03 UTC, FreeSlave wrote:

On Thursday, 21 January 2016 at 13:26:15 UTC, W.J. wrote:
On Wednesday, 20 January 2016 at 16:01:11 UTC, Dibyendu 
Majumdar wrote:

[...]


Hi,

On Linux you can use 'ldd' to print shared library 
dependencies.

On Windows you can use Dependency Walker.
On Mac there's likely a similar program.
Mind also that license terms for distributing libraries apply.


OS X has otool -L

Note that these tools don't show runtime dependencies. Many 
libraries can be loaded at runtime, especially when you use 
derelict-like modules. These libraries in their turn may depend 
on others, etc.


Yes, except for Dependency Walker, which, if I recall, inspects 
the executable and can recognize runtime dependencies via 
LoadLibrary calls.


Re: Distribution of D apps

2016-01-20 Thread Rikki Cattermole via Digitalmars-d-learn

On 21/01/16 5:01 AM, Dibyendu Majumdar wrote:

Hi,

I am trying to understand the options for distributing a D app to users.
My assumption is that only the shared libraries and binaries need to be
distributed, and I need to include the D libraries. Is this correct?

Thanks and Regards
Dibyendu


Binaries such as such as shared libraries do indeed need to be packaged 
in the distribution.


Static library files do not need to be distributed however.


Distribution of D apps

2016-01-20 Thread Dibyendu Majumdar via Digitalmars-d-learn

Hi,

I am trying to understand the options for distributing a D app to 
users. My assumption is that only the shared libraries and 
binaries need to be distributed, and I need to include the D 
libraries. Is this correct?


Thanks and Regards
Dibyendu









Re: Distribution of D apps

2016-01-20 Thread Adam D. Ruppe via Digitalmars-d-learn
By default, a binary compiled with D will have the standard 
library statically linked in, so all you need to distribute are 
other shared libs you choose to use (which might include curl btw 
if you use the std.net.curl functions).


But many .exes from D can be distributed alone and expected to 
work.