Thread overview | |||||||||
---|---|---|---|---|---|---|---|---|---|
|
February 07, 2018 extern(C++) in win32.mak | ||||
---|---|---|---|---|
| ||||
I don't understand the following line in dmd/src/win32.mak: extern (C++) __gshared const(char)* ddoc_default = import ("default_ddoc_theme.ddoc"); What does the word "import" mean in this context? I can't find any documentation on the use of import in this way, and the line fails to compile during the make. The error message is: file "default_ddoc_theme.ddoc" cannot be found or not in a path specified with -J The file is in the directory dmd2/src/res, which is specified with -J../res in the build. Is there anyone who knows the ins and outs of the makefile that can shed some light? Thanks, Paul |
February 07, 2018 Re: extern(C++) in win32.mak | ||||
---|---|---|---|---|
| ||||
Posted in reply to Paul D Anderson | On 07/02/2018 6:05 AM, Paul D Anderson wrote: > I don't understand the following line in dmd/src/win32.mak: > > extern (C++) __gshared const(char)* ddoc_default = import ("default_ddoc_theme.ddoc"); That is a string import (-J). > What does the word "import" mean in this context? I can't find any documentation on the use of import in this way, and the line fails to compile during the make. https://dlang.org/spec/expression.html#import_expressions |
February 07, 2018 Re: extern(C++) in win32.mak | ||||
---|---|---|---|---|
| ||||
Posted in reply to Paul D Anderson | On Wednesday, 7 February 2018 at 06:05:54 UTC, Paul D Anderson wrote:
> I don't understand the following line in dmd/src/win32.mak:
>
> extern (C++) __gshared const(char)* ddoc_default = import ("default_ddoc_theme.ddoc");
>
> What does the word "import" mean in this context? I can't find any documentation on the use of import in this way, and the line fails to compile during the make.
>
> The error message is:
>
> file "default_ddoc_theme.ddoc" cannot be found or not in a path specified with -J
>
> The file is in the directory dmd2/src/res, which is specified with -J../res in the build.
>
> Is there anyone who knows the ins and outs of the makefile that can shed some light?
>
> Thanks,
> Paul
I recommend cloning DMD directly from git if you want to compile from source. There are many CIs in place that ensure that it always works.
|
February 07, 2018 Re: extern(C++) in win32.mak | ||||
---|---|---|---|---|
| ||||
Posted in reply to rikki cattermole | On Wednesday, 7 February 2018 at 06:18:04 UTC, rikki cattermole wrote:
> On 07/02/2018 6:05 AM, Paul D Anderson wrote:
>> I don't understand the following line in dmd/src/win32.mak:
>>
>> extern (C++) __gshared const(char)* ddoc_default = import ("default_ddoc_theme.ddoc");
>
> That is a string import (-J).
>
>> What does the word "import" mean in this context? I can't find any documentation on the use of import in this way, and the line fails to compile during the make.
>
> https://dlang.org/spec/expression.html#import_expressions
Thank you. I did not know that.
The error was caused by an over-zealous virus checker preventing some dmc executables from downloading.
Paul
|
February 07, 2018 Re: extern(C++) in win32.mak | ||||
---|---|---|---|---|
| ||||
Posted in reply to Seb | On Wednesday, 7 February 2018 at 08:28:23 UTC, Seb wrote: > On Wednesday, 7 February 2018 at 06:05:54 UTC, Paul D Anderson wrote: >> Is there anyone who knows the ins and outs of the makefile that can shed some light? >> >> Thanks, >> Paul > > I recommend cloning DMD directly from git if you want to compile from source. There are many CIs in place that ensure that it always works. I downloaded from git but still get an error, though it's no longer the ddoc file error. At this line (316-7), $G\lexer.lib: $(LEXER_SRCS) $(ROOT_SRCS) $(STRING_IMPORT_FILES) $G $(HOST_DC) -of$@ -vtls -lib -J$G $(DFLAGS) $(LEXER_SRCS) $(ROOT_SRCS) I get Error: 'of..\generated\windows\release\32\lexer.lib' not found It looks to me as if at ' -of$@ ', the '-of' flag is supposed to specify the output file, but is being interpreted as part of the filename. Does anyone know what the problem is? Paul |
February 07, 2018 Re: extern(C++) in win32.mak | ||||
---|---|---|---|---|
| ||||
Posted in reply to Paul D Anderson | On 2018-02-07 14:47, Paul D Anderson wrote: > I get > Error: 'of..\generated\windows\release\32\lexer.lib' not found I don't think this file is built anymore. -- /Jacob Carlborg |
February 07, 2018 Re: extern(C++) in win32.mak | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jacob Carlborg | On Wednesday, 7 February 2018 at 14:38:37 UTC, Jacob Carlborg wrote: > On 2018-02-07 14:47, Paul D Anderson wrote: > >> I get >> Error: 'of..\generated\windows\release\32\lexer.lib' not found > > I don't think this file is built anymore. It's a leftover of the lexer experiment and AFAICT still built: https://github.com/dlang/dmd/blob/master/src/win32.mak#L317 https://github.com/dlang/dmd/blob/master/src/win32.mak#L336 > It looks to me as if at ' -of$@ ', the '-of' flag is supposed to specify the output file, but is being interpreted as part of the filename. Yeah looks like it. What HOST_DC do you use (i.e. what DMD version)? As mentioned, this file is built by various CIs, so it's pretty interesting to see that it doesn't work for you. |
Copyright © 1999-2021 by the D Language Foundation