| Thread overview |
|---|
November 04, 2014 Compiling druntime gives error messages | ||||
|---|---|---|---|---|
| ||||
I have DMD 2.066.1 installed on 64-bit Ubuntu 14.04. I downloaded all files from https://github.com/D-Programming-Language/druntime I use following command line to compile druntime to generate library. make -f posix.mak DMD=dmd First few lines are as follows: dmd -c -o- -Isrc -Iimport -Hfimport/core/sync/barrier.di src/core/sync/barrier.d src/core/stdc/stdio.d(859): Error: found 'nothrow' when expecting '{' src/core/stdc/stdio.d(861): Error: mismatched number of curly brackets src/core/stdc/stdio.d(862): Error: mismatched number of curly brackets src/core/stdc/stdio.d(863): Error: mismatched number of curly brackets Then I opened both ./src/core/stdc/stdio.d /usr/include/dmd/druntime/import/core/stdc/stdio.d to compare them each other. On line 859, the downloaded stdio.d has "asm nothrow @nogc". The installed stdio.d has "asm" only. Am I downloading wrong druntime codes, or using wrong DMD compiler? It is like downloaded druntime codes are coming from future. | ||||
November 04, 2014 Re: Compiling druntime gives error messages | ||||
|---|---|---|---|---|
| ||||
Posted in reply to tcak | On Tue, Nov 04, 2014 at 11:32:34PM +0000, tcak via Digitalmars-d wrote: > I have DMD 2.066.1 installed on 64-bit Ubuntu 14.04. > > I downloaded all files from https://github.com/D-Programming-Language/druntime [...] > Am I downloading wrong druntime codes, or using wrong DMD compiler? It is like downloaded druntime codes are coming from future. Generally, to compile druntime from git HEAD requires that you use dmd from git HEAD, as a number of compiler / druntime fixes require changes in both. So it's not surprising if the latest druntime fails to be compiled by an earlier compiler. See also: http://wiki.dlang.org/Building_DMD (which includes building druntime). T -- Nobody is perfect. I am Nobody. -- pepoluan, GKC forum | |||
November 05, 2014 Re: Compiling druntime gives error messages | ||||
|---|---|---|---|---|
| ||||
Posted in reply to H. S. Teoh | On Tuesday, 4 November 2014 at 23:45:54 UTC, H. S. Teoh via Digitalmars-d wrote: > On Tue, Nov 04, 2014 at 11:32:34PM +0000, tcak via Digitalmars-d wrote: >> I have DMD 2.066.1 installed on 64-bit Ubuntu 14.04. >> >> I downloaded all files from >> https://github.com/D-Programming-Language/druntime > [...] >> Am I downloading wrong druntime codes, or using wrong DMD compiler? It >> is like downloaded druntime codes are coming from future. > > Generally, to compile druntime from git HEAD requires that you use dmd > from git HEAD, as a number of compiler / druntime fixes require changes > in both. So it's not surprising if the latest druntime fails to be > compiled by an earlier compiler. > > See also: http://wiki.dlang.org/Building_DMD > > (which includes building druntime). Specifically, it was noticed that certain function attribute checks are skipped if the function contains an asm block (https://issues.dlang.org/show_bug.cgi?id=12979), so attributes for asm blocks were added after the stable release: https://github.com/D-Programming-Language/dmd/pull/4033 Obviously, the stable compiler doesn't recognize those subsequent changes in git HEAD, so you have to compile dmd from git source if you want to compile druntime from the latest git. | |||
November 05, 2014 Re: Compiling druntime gives error messages | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Joakim | And what about of back ports of important fixes, changes that can be backward compatible. In my point of view the 2.0.66.* is a dead release, because it can not compile lots of already existing code that the 2.0.65 and 2.0.67 can. A D language weakness pointed out on other posts no backports/fixes like gcc and others do. Not a good thing to grow up the user base. Cheers ! | |||
November 06, 2014 Re: Compiling druntime gives error messages | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Domingo | On Wednesday, 5 November 2014 at 17:40:54 UTC, Domingo wrote: > And what about of back ports of important fixes, changes that can be backward compatible. > > In my point of view the 2.0.66.* is a dead release, because it can not compile lots of already existing code that the 2.0.65 and 2.0.67 can. > > A D language weakness pointed out on other posts no backports/fixes like gcc and others do. > > Not a good thing to grow up the user base. While it may be better for users if such backporting was done for stable releases, the D community doesn't have the resources to do that right now. Perhaps users can post bounties on bountysource for specific features they'd like to see backported, as it's thankless work that nobody is incented to do otherwise: https://www.bountysource.com/teams/d/issues | |||
November 06, 2014 Re: Compiling druntime gives error messages | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Joakim | On Wednesday, 5 November 2014 at 03:31:47 UTC, Joakim wrote:
> On Tuesday, 4 November 2014 at 23:45:54 UTC, H. S. Teoh via Digitalmars-d wrote:
>> On Tue, Nov 04, 2014 at 11:32:34PM +0000, tcak via Digitalmars-d wrote:
>>
>> Generally, to compile druntime from git HEAD requires that you use dmd
>> from git HEAD, as a number of compiler / druntime fixes require changes
>> in both. So it's not surprising if the latest druntime fails to be
>> compiled by an earlier compiler.
>>
>> See also: http://wiki.dlang.org/Building_DMD
>>
>> (which includes building druntime).
>
> Specifically, it was noticed that certain function attribute checks are skipped if the function contains an asm block (https://issues.dlang.org/show_bug.cgi?id=12979), so attributes for asm blocks were added after the stable release:
>
> https://github.com/D-Programming-Language/dmd/pull/4033
>
> Obviously, the stable compiler doesn't recognize those subsequent changes in git HEAD, so you have to compile dmd from git source if you want to compile druntime from the latest git.
I downloaded the source codes of 2.066.1 from Downloads page of Dlan. Then I used its druntime folder. It builds properly. Though I still couldn't have made it work with -defaultlib flag. Anyway, I will play with it for a while.
| |||
November 06, 2014 Re: Compiling druntime gives error messages | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Joakim | On Wednesday, 5 November 2014 at 03:31:47 UTC, Joakim wrote:
> On Tuesday, 4 November 2014 at 23:45:54 UTC, H. S. Teoh via Digitalmars-d wrote:
>> On Tue, Nov 04, 2014 at 11:32:34PM +0000, tcak via Digitalmars-d wrote:
>>
>> Generally, to compile druntime from git HEAD requires that you use dmd
>> from git HEAD, as a number of compiler / druntime fixes require changes
>> in both. So it's not surprising if the latest druntime fails to be
>> compiled by an earlier compiler.
>>
>> See also: http://wiki.dlang.org/Building_DMD
>>
>> (which includes building druntime).
>
> Specifically, it was noticed that certain function attribute checks are skipped if the function contains an asm block (https://issues.dlang.org/show_bug.cgi?id=12979), so attributes for asm blocks were added after the stable release:
>
> https://github.com/D-Programming-Language/dmd/pull/4033
>
> Obviously, the stable compiler doesn't recognize those subsequent changes in git HEAD, so you have to compile dmd from git source if you want to compile druntime from the latest git.
I downloaded the source codes of 2.066.1 from Downloads page of Dlan. Then I used its druntime folder. It builds properly. Though I still couldn't have made it work with -defaultlib flag. Anyway, I will play with it for a while.
| |||
Copyright © 1999-2021 by the D Language Foundation
Permalink
Reply