www.digitalmars.com         C & C++   DMDScript  

D.gnu - GDC - who does what?

reply Steve Teale <steve.teale britseyeview.com> writes:
Anders, Michael, could you possibly post a summary of who does what with
respect to GDC.

There's clearly quite a bit of work going on, but it is difficult to pull
together a picture of what is happening.

It would be useful if contact information for the parties involved could be
included, if the parties are willing.

From what I've read, it seems that progress through the DMD versions could be
speeded up by having a number of people in parallel working on the
modifications that need to be made to get a version working. But this would
require some measure of organization which is impossible without communication.
Jan 20 2010
next sibling parent reply =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> writes:
Steve Teale wrote:
 Anders, Michael, could you possibly post a summary of who does what with
respect to GDC.

I have been doing some GDC/GDB installers: * http://gdcwin.sourceforge.net/ (MinGW) * http://gdcgnu.sourceforge.net/ ("FSF") * http://gdcmac.sourceforge.net/ (Apple) Mostly for use with wxD and with Code::Blocks, and to make it easier to get started with D... Either the old GDC 0.24 release, or the "stable" DMD 1.030 based. The GDB is with the D patches. Have some patches for "llvm-gdc", but nothing that is ready for use. (i.e. for LLVM-GCC 4.2) I'm not particularly interested in GPLv3 or D2, so haven't done much besides packaging lately. --anders
Jan 20 2010
parent reply Steve Teale <steve.teale britseyeview.com> writes:
Anders F Bj�rklund Wrote:

 Steve Teale wrote:
 Anders, Michael, could you possibly post a summary of who does what with
respect to GDC.

I have been doing some GDC/GDB installers: * http://gdcwin.sourceforge.net/ (MinGW) * http://gdcgnu.sourceforge.net/ ("FSF") * http://gdcmac.sourceforge.net/ (Apple) Mostly for use with wxD and with Code::Blocks, and to make it easier to get started with D... Either the old GDC 0.24 release, or the "stable" DMD 1.030 based. The GDB is with the D patches. Have some patches for "llvm-gdc", but nothing that is ready for use. (i.e. for LLVM-GCC 4.2) I'm not particularly interested in GPLv3 or D2, so haven't done much besides packaging lately. --anders

Thanks Anders, that's helpful. If I put together a GDC-newbie page, can I quote what you say? Also it seems that there is a confusing proliferation of GDC versions based on DMD 1.0xx. You mention two, one presumably 1.024 based and the other 1.030 (where do I get that?). There's also the 1.043 based version mentioned on bitbucket/goshawk/gdc. Which should we be pushing? I have been exercising the 1.024 version (4.2.4 20080705 (prerelease gdc 0.25 20080312, using dmd 1.024 - from Ubuntu), with a bunch of code I wrote some time ago, and it has done well - only one show-stopper so far, for which I want to try the later versions. If you have something to do with the Code::Blocks packaging, you should note that their regular expressions for parsing the compiler messages are broken (both for GDC and DMD). If you want, I'll fish out the ones I have used to get it working reasonably.
Jan 20 2010
parent reply =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> writes:
Steve Teale wrote:
 I have been doing some GDC/GDB installers:
 * http://gdcwin.sourceforge.net/ (MinGW)
 * http://gdcgnu.sourceforge.net/ ("FSF")
 * http://gdcmac.sourceforge.net/ (Apple)

 Mostly for use with wxD and with Code::Blocks,
 and to make it easier to get started with D...
 Either the old GDC 0.24 release, or the "stable"
 DMD 1.030 based. The GDB is with the D patches.


 Thanks Anders, that's helpful. If I put together a GDC-newbie page, can I
quote what you say?

Sure. You can use the "getting started" too if it helps: * http://gdcwin.sourceforge.net/GettingStarted.pdf * http://gdcmac.sourceforge.net/GettingStarted.pdf Instructions on MinGW or Xcode Tools found elsewhere, having "the right" GCC installed is a pre-requirement. There's also some stuff on the Wiki4D or Tango wikis.
 Also it seems that there is a confusing proliferation of GDC versions based on
DMD 1.0xx. You mention two, one presumably 1.024 based and the other 1.030
(where do I get that?). There's also the 1.043 based version mentioned on
bitbucket/goshawk/gdc. Which should we be pushing?

The first one is the "released" version. Unfortunately it doesn't work with Tango, so I've been doing a build from trunk - while also fixing some Vista/Leopard issues. DMD 1.030 is the one listed as "stable" by DigitalMars, on http://www.digitalmars.com/d/download.html that is. Presumably you want the "latest", once released/ready ? The source tarballs should be right next to the binaries: http://downloads.sourceforge.net/project/gdcwin/gdc/r229/gdc-trunk-r229.tar.gz http://downloads.sourceforge.net/project/gdcmac/gdc/r229/gdc-trunk-r229.tar.bz2 It's just a export of a svn checkout (-r229) from: https://dgcc.svn.sourceforge.net/svnroot/dgcc/trunk/ Some minor backports were added too, as .patch files.
 I have been exercising the 1.024 version (4.2.4 20080705 (prerelease gdc 0.25
20080312, using dmd 1.024 - from Ubuntu), with a bunch of code I wrote some
time ago, and it has done well - only one show-stopper so far, for which I want
to try the later versions.

I have been using the svn revision number instead, "(gdc prerelease 0.25 svn 229, using dmd 1.030)". It would be matching 20080601 if using the svn date.
 If you have something to do with the Code::Blocks packaging, you should note
that their regular expressions for parsing the compiler messages are broken
(both for GDC and DMD). If you want, I'll fish out the ones I have used to get
it working reasonably.

Sure, if you have a link to the BerliOS* bug report or even better - patches, I'll try to include them. * http://developer.berlios.de/projects/codeblocks/ --anders
Jan 20 2010
next sibling parent reply Steve Teale <steve.teale britseyeview.com> writes:
Anders F Björklund Wrote:

 
 Sure, if you have a link to the BerliOS* bug report
 or even better - patches, I'll try to include them.
 * http://developer.berlios.de/projects/codeblocks/
 
 --anders

For whatever reason this post turned up with your name rendered correctly. My browser (Firefox) is set to UTF-8. Steve
Jan 21 2010
parent =?UTF-8?B?QW5kZXJzIEYgQmrDtsKacmtsdW5k?= <afb algonet.se> writes:
Steve Teale wrote:
 For whatever reason this post turned up with your name rendered correctly. My
browser (Firefox) is set to UTF-8.

I find using Thunderbird* for newsgroups is much better... But I might have a different default encoding on this computer, with the newer OS. --anders
Jan 21 2010
prev sibling parent reply Steve Teale <steve.teale britseyeview.com> writes:
Anders F Björklund Wrote:

 I have been doing some GDC/GDB installers:
 * http://gdcwin.sourceforge.net/ (MinGW)
 * http://gdcgnu.sourceforge.net/ ("FSF")
 * http://gdcmac.sourceforge.net/ (Apple)



Anders, There's a bit of a clash between http://gdcwin.sourceforge.net/ and Ubuntu. In the gdcgnu page gdc-4.2 is described as experimental, but in Ubuntu 9 apt-get install gdc will get you 4.2. To get 4.1 you have to be specific - apt-get install gdc-4.1. The 4.2 version has problems as we have already noted with the nested.nested bug. Should we be telling Ubuntu people specifically install gdc-4.1? Steve
Jan 22 2010
parent =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> writes:
Steve Teale wrote:
 Anders, There's a bit of a clash between
 http://gdcwin.sourceforge.net/ and Ubuntu.  In the gdcgnu page
 gdc-4.2 is described as experimental, but in Ubuntu 9 apt-get install
 gdc will get you 4.2. To get 4.1 you have to be specific - apt-get
 install gdc-4.1.

Well, it seems that the link isn't even going anywhere anymore: http://packages.debian.org/unstable/gdc-4.2 Possibly it should use some other words, and use the other link: http://packages.ubuntu.com/gdc-4.2 All of my pages could do with some updating, since some things changed since 2008. And some of the links aren't up to speed either, http://d-programming-language.org is getting stale - although it is not yet as badly outdated as http://opend.org/.
 The 4.2 version has problems as we have already noted with the nested.nested
bug.
 
 Should we be telling Ubuntu people specifically install gdc-4.1?

Well, either that or fix the bugs in the GCC 4.2 version... ? :-) But the packages I made used the "FSF" GCC 4.1.2, *not* Ubuntu's. Had some Fedora 9 packages for GCC 4.3.0, but they weren't really working all that good as that compiler release was rather buggy. Presumably you want to go all the way to GCC 4.4, I don't know ? As mentioned, there's some patches for the Apple/LLVM GCC 4.2 too. The Apple GCC (either -4.0 or -4.2) is "based" on the regular GCC, but has some rather significant changes and patches applied to it. The LLVM GCC is in turn based on Apple's GCC, but also compilable in a "llvm-gcc" mode. The MinGW GCC on the other hand is standard. So there's a lot of GCC's, the GNU package used http://gcc.gnu.org/ --anders
Jan 22 2010
prev sibling next sibling parent reply Michael P. <baseball.mjp gmail.com> writes:
Steve Teale Wrote:

 Anders, Michael, could you possibly post a summary of who does what with
respect to GDC.
 
 There's clearly quite a bit of work going on, but it is difficult to pull
together a picture of what is happening.
 
 It would be useful if contact information for the parties involved could be
included, if the parties are willing.
 
 From what I've read, it seems that progress through the DMD versions could be
speeded up by having a number of people in parallel working on the
modifications that need to be made to get a version working. But this would
require some measure of organization which is impossible without communication.
 

Right now, I mainly work on merging in D1 DMD front ends for GDC. I am also trying to do some others to get GDC a bit more organized, such as a folder for testing out pieces of D code to make sure GDC is working properly, and a folder that will document files specific to GDC and possibly some in the DMD front end and Phobos sources.(I don't think the documentation folder is in the hg repository yet though). I have also looked at trying to get GDC to work with later GCC versions, but haven't really got anywhere with that.
Jan 20 2010
parent reply Steve Teale <steve.teale britseyeview.com> writes:
Michael P. Wrote:

 Steve Teale Wrote:
 
 Anders, Michael, could you possibly post a summary of who does what with
respect to GDC.
 
 There's clearly quite a bit of work going on, but it is difficult to pull
together a picture of what is happening.
 
 It would be useful if contact information for the parties involved could be
included, if the parties are willing.
 
 From what I've read, it seems that progress through the DMD versions could be
speeded up by having a number of people in parallel working on the
modifications that need to be made to get a version working. But this would
require some measure of organization which is impossible without communication.
 

Right now, I mainly work on merging in D1 DMD front ends for GDC. I am also trying to do some others to get GDC a bit more organized, such as a folder for testing out pieces of D code to make sure GDC is working properly, and a folder that will document files specific to GDC and possibly some in the DMD front end and Phobos sources.(I don't think the documentation folder is in the hg repository yet though). I have also looked at trying to get GDC to work with later GCC versions, but haven't really got anywhere with that.

Thanks Michael, that's helpful. If I put together a GDC-newbiew page, can I quote you. In your view, is the bitbucket repository now the 'official' source? Also there's a guy called Arthur who works on the Ubuntu GDC package. Are you in contact with him, and do you know if he is going to upgrade to the 1.043 version. If I build binaries of the sources periodically, can they be put in the repo. I am retired, so I have some time to do stuff and deal with questions and problems, and I'm a reasonably quick learner.
Jan 20 2010
next sibling parent Michael P. <baseball.mjp gmail.com> writes:
Steve Teale Wrote:

 Michael P. Wrote:
 
 Steve Teale Wrote:
 
 Anders, Michael, could you possibly post a summary of who does what with
respect to GDC.
 
 There's clearly quite a bit of work going on, but it is difficult to pull
together a picture of what is happening.
 
 It would be useful if contact information for the parties involved could be
included, if the parties are willing.
 
 From what I've read, it seems that progress through the DMD versions could be
speeded up by having a number of people in parallel working on the
modifications that need to be made to get a version working. But this would
require some measure of organization which is impossible without communication.
 

Right now, I mainly work on merging in D1 DMD front ends for GDC. I am also trying to do some others to get GDC a bit more organized, such as a folder for testing out pieces of D code to make sure GDC is working properly, and a folder that will document files specific to GDC and possibly some in the DMD front end and Phobos sources.(I don't think the documentation folder is in the hg repository yet though). I have also looked at trying to get GDC to work with later GCC versions, but haven't really got anywhere with that.

Thanks Michael, that's helpful. If I put together a GDC-newbiew page, can I quote you.

Yeah, sure, go ahead.
 
 In your view, is the bitbucket repository now the 'official' source? Also
there's a guy called Arthur who works on the Ubuntu GDC package. Are you in
contact with him, and do you know if he is going to upgrade to the 1.043
version.

I would probably consider the bitbucket repository to be the official sources. Any proposed changes that are said to me would only be made in the bitbucket repository. I am not in contact with Arthur, and do not know if he is going to upgrade the Ubuntu GDC to 1.043 anytime soon.
 
 If I build binaries of the sources periodically, can they be put in the repo.
I am retired, so I have some time to do stuff and deal with questions and
problems, and I'm a reasonably quick learner.

That would be fine with me.
Jan 21 2010
prev sibling parent reply Vincenzo Ampolo <vincenzo.ampolo gmail.com> writes:
Steve Teale wrote:

 Thanks Michael, that's helpful. If I put together a GDC-newbiew page, can
 I quote you.

Well, thanks for your page, but please let's concentrate all the informations about gdc in the gdc wiki in bitbucket. It's better for newbies to have a single place with all the informations they need. Again, everyone is elegible to edit the wiki, just contact me to have the writing rights for your account.
 
 In your view, is the bitbucket repository now the 'official' source? Also
 there's a guy called Arthur who works on the Ubuntu GDC package. Are you
 in contact with him, and do you know if he is going to upgrade to the
 1.043 version.

Yes, the bitbucket repo is the only active one, i've spoken with David and he seems really busy in real life works. I'm in contact with Arthur and we collaborate for packages (he works for debian, i work for ubuntu).
 
 If I build binaries of the sources periodically, can they be put in the
 repo. I am retired, so I have some time to do stuff and deal with
 questions and problems, and I'm a reasonably quick learner.

Nope, that's not the way people get sources in linux based operating systems. People use package managers, so let's use them! All the packages related to D are tested in the D programming language repository before being included in the debian archive (thanks to Arthur that recently added the ldc package too!). The archive can be reached through this link: https://launchpad.net/~d-language-packagers/+archive/ppa In this way people will get updates automatically after installing the repository. Also Mathias Klose, from Ubuntu, contacted me for a newer package of gdc in the ubuntu-debian repo. I told him that as soon as we are able to run gdc d1 and gdc d2 with the latest gcc frontedn (the same of the ubuntu toolchain) we can provide a package. Having a gdc package compiled with another version of gcc instead the one in which is used in the toolchain can lead to very nasty problems. Everyone who wants to collaborate please start downloading the gdc code following these instructions: http://bitbucket.org/goshawk/gdc/wiki/Home And then start hacking it. Please remember that compilers are the most complex piece of software that a human can do, so don't give up when you find a first problem. Wish you the best luck. Best Regards, -- Vincenzo Ampolo (goshawk) http://goshawknest.wordpress.com
Jan 22 2010
parent Steve Teale <steve.teale britseyeview.com> writes:
Vincenzo Ampolo Wrote:

 Well, thanks for your page, but please let's concentrate all the 
 informations about gdc in the gdc wiki in bitbucket. It's better for newbies 
 to have a single place with all the informations they need.
 
 Again, everyone is elegible to edit the wiki, just contact me to have the 
 writing rights for your account.

My idea was to put together a 'single place' that is clear and internally consistent. Wikis where everyone is eligible usually end up being inconsistent and sometimes confusing. It's also important to remember that these days, the newbies to GDC may well be newbies to Linux also and may not be accustomed to its somewhat terse documentation style. I'm volunteering to do the jobs that most developers find tedious, like documentation, QA, tech support, and such. God knows why - when I was a working developer I always found that stuff a complete pain in the ass. I agree with you 100% about packaging now I know that the appropriate contacts are there, and things are happening. Thanks Steve
Jan 22 2010
prev sibling next sibling parent reply Steve Teale <steve.teale britseyeview.com> writes:
Steve Teale Wrote:

Anders, Michael, Vincento, I have made a start on the GDC-newbie page I was
talking about.

It's at http://www.britseyeview.com/GDC-newbie.html

Please have a look and see if you think it is worth pursuing.

Thanks, Steve
Jan 21 2010
next sibling parent "nedbrek" <nedbrek yahoo.com> writes:
Hello all,

"Steve Teale" <steve.teale britseyeview.com> wrote in message 
news:hj9dru$1cbt$1 digitalmars.com...
 Steve Teale Wrote:

 Anders, Michael, Vincento, I have made a start on the GDC-newbie page I 
 was talking about.

 It's at http://www.britseyeview.com/GDC-newbie.html

 Please have a look and see if you think it is worth pursuing.

Thank you Steve. It is good to see people pursuing gdc. I had just about given up on it, and was looking into ldc. I will try out your Ubuntu How To, maybe later today... Ned
Jan 21 2010
prev sibling parent reply =?UTF-8?B?QW5kZXJzIEYgQmrDtsKacmtsdW5k?= <afb algonet.se> writes:
Steve Teale wrote:
 Anders, Michael, Vincento, I have made a start on the GDC-newbie page I was
talking about.
 
 It's at http://www.britseyeview.com/GDC-newbie.html
 
 Please have a look and see if you think it is worth pursuing.
 
 Thanks, Steve

It's the "GCC D Compiler", even if it sets version(GNU)... This is partly due to it not being an official GNU project. The GNU Pascal Compiler, however, _is_ an offical front end. Although not included in the main, but http://gnu-pascal.de The reason why you need to "adjust" your compiler libraries is because of the version mismatch, GCC 4.4.1 vs GCC 3.4.5 The GDC was compiled for gcc-3.4.5-20060117-3, available from http://sourceforge.net/projects/mingw/files/GCC%20Version%203/ --anders BTW. My name seems a bit wrong, you can use &ouml; if it helps ? (might be easier than gettting the page encoded as UTF-8...)
Jan 21 2010
parent reply Steve Teale <steve.teale britseyeview.com> writes:
Anders F Bjöšrklund Wrote:

 Steve Teale wrote:
 Anders, Michael, Vincento, I have made a start on the GDC-newbie page I was
talking about.
 
 It's at http://www.britseyeview.com/GDC-newbie.html
 
 Please have a look and see if you think it is worth pursuing.
 
 Thanks, Steve

It's the "GCC D Compiler", even if it sets version(GNU)... This is partly due to it not being an official GNU project. The GNU Pascal Compiler, however, _is_ an offical front end. Although not included in the main, but http://gnu-pascal.de The reason why you need to "adjust" your compiler libraries is because of the version mismatch, GCC 4.4.1 vs GCC 3.4.5 The GDC was compiled for gcc-3.4.5-20060117-3, available from http://sourceforge.net/projects/mingw/files/GCC%20Version%203/ --anders BTW. My name seems a bit wrong, you can use &ouml; if it helps ? (might be easier than gettting the page encoded as UTF-8...)

Oh dear, so I have to explain that to newbies! It's going to take me two days of research to understand what you are saying. Please bear with me.
Jan 21 2010
parent =?UTF-8?B?QW5kZXJzIEYgQmrDtsKacmtsdW5k?= <afb algonet.se> writes:
Steve Teale wrote:
 Anders, Michael, Vincento, I have made a start on the GDC-newbie page I was
talking about.

 It's at http://www.britseyeview.com/GDC-newbie.html

 Please have a look and see if you think it is worth pursuing.

 Thanks, Steve

This is partly due to it not being an official GNU project. The GNU Pascal Compiler, however, _is_ an offical front end. Although not included in the main, but http://gnu-pascal.de The reason why you need to "adjust" your compiler libraries is because of the version mismatch, GCC 4.4.1 vs GCC 3.4.5 The GDC was compiled for gcc-3.4.5-20060117-3, available from http://sourceforge.net/projects/mingw/files/GCC%20Version%203/ --anders BTW. My name seems a bit wrong, you can use &ouml; if it helps ? (might be easier than gettting the page encoded as UTF-8...)

Oh dear, so I have to explain that to newbies! It's going to take me two days of research to understand what you are saying. Please bear with me.

OK, I'll try again: * you have a typo on your page, should be "GDC (GCC D Compiler)" * when installing MinGW, make sure to get GCC Version 3 as well Slightly better ? :) I just used the Automated MinGW Installer on Windows, was easiest: http://mingw.org/wiki/HOWTO_Install_the_MinGW_GCC_Compiler_Suite I also install MSYS because I prefer a real shell over a DOS prompt. It's not really necessary, unless you want to use ./configure later. The nicest thing about MinGW is otherwise that you don't need any Windows in order to use it, but can build your .exe files from your regular operating system. Haven't made any binaries since DMD 1.00 (GDC 0.21) though, but it works well on Linux or Darwin. --anders
Jan 21 2010
prev sibling parent reply Vincenzo Ampolo <vincenzo.ampolo gmail.com> writes:
Steve Teale wrote:

 Anders, Michael, could you possibly post a summary of who does what with
 respect to GDC.

Well. Gdc starts around 2004-5 with a first release from David Friedman. It got developed until 2007 and then it started its decadence. I've been planning to contribute for a while and when Michael said that he wanted to contribute too in this newsgroup we made a fork on bitbucket and started doing our modifications. I wrote to David that helped us in understanding how gdc works. Actually our branch is the only active one in the development and it's open to any other people which wants to contribute. Right now 5 people have committing rights and if you wanna commit code too i'll give right to write to the repo.
 
 There's clearly quite a bit of work going on, but it is difficult to pull
 together a picture of what is happening.

Now you should know.
 From what I've read, it seems that progress through the DMD versions could
 be speeded up by having a number of people in parallel working on the
 modifications that need to be made to get a version working. But this
 would require some measure of organization which is impossible without
 communication.

Yes. this is why we started creating an IRC channel on freenode and a consistent wiki page on bitbucket. I started blogging about gdc on my blog too with tutorial and demos about it. The plan right now is quite simple, and it's written in the topic of our channel (#d.gdc): update gdc backend to gcc 4.4 and merge newest dmd frontend, either d1 (easier) or d2 (harder, needs a complete reimplementation to allow druntime). If you feel able to help us in this development just read these guidelines http://bitbucket.org/goshawk/gdc/wiki/RepositoryGuidelines and contact me to have write rights on the repo. Then ping us on IRC or write down proposals in bitbucket as "issues". :) Hope it all helps. -- Vincenzo Ampolo (goshawk) http://goshawknest.wordpress.com
Jan 21 2010
parent =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> writes:
Vincenzo Ampolo wrote:
 Anders, Michael, could you possibly post a summary of who does what with
 respect to GDC.

Well. Gdc starts around 2004-5 with a first release from David Friedman. It got developed until 2007 and then it started its decadence. [...]

2007 was a turbulent year for D, after the release of DMD 1.00 there was also the release of Tango and the first alphas of D2. Maybe the rebirth of D2 (as "D") will spark some more interest. Presumably there will be some DMD release matching the D book ? --anders
Jan 22 2010