On Tuesday, 23 June 2015 at 07:25:05 UTC, Baz wrote:
On Tuesday, 23 June 2015 at 06:50:28 UTC, Charles Hawkins wrote:
On Tuesday, 23 June 2015 at 03:31:37 UTC, weaselcat wrote:
On Tuesday, 23 June 2015 at 03:29:14 UTC, Charles Hawkins
wrote:
Thanks, Adam. I'm coming from OCaml and haven't seen a seg
fault in years. Didn't recognize it. :D Hopefully I can
figure it out from here.
Try to compile with either ldc or gdc and the -g flag, it
should give you a backtrace. dmd seems to not like linux wrt
backtraces.
Thanks. I wish! I haven't had any success in compiling with
anything but dub. gdc, dmd, rdmd always give me "module mylib
is in file 'mylib.d' which cannot be read" on my "import
mylib;" statement. I've tried every permutation of -I and -L
that I can think of. It almost appears that one either uses
dub for everything or nothing and I'm getting pretty
frustrated with it as well. Perhaps I should just go back to
old-fashioned make files?
in dmd you have to pass
- the .lib/.a files a source
- the path to the lib source with '-I'. Sometimes when the path
is not well indicated you get the error you talk about. This is
because the '-I' path must follow carefully the structure of
the lib, e.g
'import myLib.package.moduleThis':
the '-I' must point to the folder that contains the folder
'myLib'.
Sigh. I'm probably doing something stupid. I tried full paths:
dmd -I+/home/charles/projects/d/mylib/source/mylib/ myprog.d
/home/charles/projects/d/mylib/build/libmylib.a
Same result.
myprog.d(4) Error: module mylib is in file 'mylib.d' which cannot
be read
Statement in myprog is:
import mylib;
I used tab expansion so I'm confident everything is spelled
correctly. Since dub will compile it, I also tried copying and
pasting its entry from the local packages file (leaves off the
"source/mylib/"). Is there a way to find out what command dub is
passing to dmd?