Thread overview | ||||||
---|---|---|---|---|---|---|
|
October 14, 2007 import resolution | ||||
---|---|---|---|---|
| ||||
I've been playing with D on and off for a couple of years now, but now i'm taking a more serious look at it. So far things have generally gone well, but now i'm encountering an import resolution issue. In my source, I import tango.core.Thread and compile with: dmd main.d -IC:\dmd\tango\import\tango\core and get the following error: main.d(4): module Thread cannot read file 'tango\core\Thread.d' Well Thread is an interface file, not a source file. According to the docs, the compiler looks for interface files first then source files but yet doesn't seem to be able to find it. In fact i've encountered more occasions where i've specified the import dir on the command line but dmd is unable to see the file, but this one is my main stumbling block right now. Any ideas? |
October 14, 2007 Re: import resolution | ||||
---|---|---|---|---|
| ||||
Posted in reply to RandyH | RandyH wrote: > I've been playing with D on and off for a couple of years now, but now i'm taking a more serious look at it. > > So far things have generally gone well, but now i'm encountering an import resolution issue. In my source, I import tango.core.Thread and compile with: > > dmd main.d -IC:\dmd\tango\import\tango\core > > and get the following error: > > main.d(4): module Thread cannot read file 'tango\core\Thread.d' > > Well Thread is an interface file, not a source file. According to the docs, the compiler looks for interface files first then source files but yet doesn't seem to be able to find it. > > In fact i've encountered more occasions where i've specified the import dir on the command line but dmd is unable to see the file, but this one is my main stumbling block right now. > > Any ideas? > Have you tried using -IC:\dmd\tango\import ? I am fairly certain that it's going to look for "tango.core.Thread" in {list of import paths}\tango\core\Thread.{di,d} -- Daniel |
October 14, 2007 Re: import resolution | ||||
---|---|---|---|---|
| ||||
Posted in reply to RandyH | Reply to RandyH, > I've been playing with D on and off for a couple of years now, but now > i'm taking a more serious look at it. > > So far things have generally gone well, but now i'm encountering an > import resolution issue. In my source, I import tango.core.Thread and > compile with: > > dmd main.d -IC:\dmd\tango\import\tango\core > try dmd main.d -IC:\dmd IIRC you need to give the root of the module tree as the import path. I think in C it is the same. If you want to include c:\foo\bar\baz.h using #include<bar\baz.h> then you need to have c:\foo in the import dir list. |
October 14, 2007 Re: import resolution | ||||
---|---|---|---|---|
| ||||
Posted in reply to Daniel Keep | Daniel Keep Wrote:
>
>
> RandyH wrote:
> > I've been playing with D on and off for a couple of years now, but now i'm taking a more serious look at it.
> >
> > So far things have generally gone well, but now i'm encountering an import resolution issue. In my source, I import tango.core.Thread and compile with:
> >
> > dmd main.d -IC:\dmd\tango\import\tango\core
> >
> > and get the following error:
> >
> > main.d(4): module Thread cannot read file 'tango\core\Thread.d'
> >
> > Well Thread is an interface file, not a source file. According to the docs, the compiler looks for interface files first then source files but yet doesn't seem to be able to find it.
> >
> > In fact i've encountered more occasions where i've specified the import dir on the command line but dmd is unable to see the file, but this one is my main stumbling block right now.
> >
> > Any ideas?
> >
>
> Have you tried using -IC:\dmd\tango\import ? I am fairly certain that it's going to look for "tango.core.Thread" in {list of import paths}\tango\core\Thread.{di,d}
>
> -- Daniel
Bingo. That did it. Thanks alot. I'm still getting used to imports resolving to actual path names.
|
Copyright © 1999-2021 by the D Language Foundation