On Tuesday, 20 September 2016 at 19:45:57 UTC, Karabuta wrote:
On Tuesday, 20 September 2016 at 15:38:55 UTC, Darren wrote:
On Tuesday, 20 September 2016 at 15:07:53 UTC, rikki
cattermole wrote:
Ok lets start at the very beginning...
I think I need to start before that, haha.
I might need more of a step-by-step guide. I'm a complete
beginner to programming, not just D. I worked through
Programming in D, where I was just compiling with dmd, then
when I decided to learn OpenGL I seem to be using dub for
everything.
There have been a few libraries I've wanted to use but
couldn't because they didn't have a pre-compiled binary, which
is all I've been able to get working through sheer trial and
error. Some sites say to use things like CMake and cygwin,
but I'm uncomfortable using things I have no idea about.
Dub is like a package manager for D (like what npm is to
node.js). All dub libraries are hosted at code.dlang.org. When
you see a library at code.dlang.org you want to use, you could
either type "dub install packagename" whilst in the dub project
ROOT or specify dependencies in the dub.json file.
You can then run "dub run" which will take care of fetching and
building dependencies/libraries from code.dlang.org (including
linking and running the binary).
For example, there is a web framework called vibe.d. If I want
to use vide.d, I can specify dependencies as;
dependencies: {
"vide-d":"^0.7.29"
}
In my app.d file (which is available for any dub project
created using "dub init projectname") I can import vibe.d using;
import vide.d;
void main() {
...
}
I can now compile and run the program with "dub run" or "dub
build" to only build and link without running.
Thank you! This does seem to work for packages listed on the dub
page (tested it with gl3n).
Would you be able to tell me how to install libraries that aren't
written in D? A lot of what I need to use are written in C/C++,
and I've use dub for bindings to those binaries. But what if I
need to compile/build those libraries from scratch, or use/link a
static library?
I'm not sure if there's a simple answer to this question but I
could do with guidance with how to use those libraries with D
(other tutorials just focus on C++ with Visual Studio, etc).