Archive

Archive for September, 2009

Gdc D2 with GCC 4.3.4 sees light

I’ve been working with ldc for a long time. I enjoyed it, i helped the development with tickets and hacking ldc a bit. I even tried to compile Tango as shared library but i got an error, probably caused by the compiler since people reported that in gdc they were able to do it. I then started guessing if llvm is so stable as it seems and if it can substitute the gnu compiler collection. Then i came to these llvm vs gcc benchmarks. Well the result is that llvm is not so fast and reliable as promised. In the same days, a message posted on the D newsgroup got me. I started thinking that resurrection gdc is the only way to make a stable and reliable compiler accepted in the FOSS community for the D programming language. But it should resurrect it should implement the D2 specs: there are no other compilers than dmd which support D2 around. So, me and Michael joined to the challenge to work on gdc :D

We got the lastest working branch of gdc, the one who relies on gcc 4.3.1. We then copied in our repository in bitbucket and applied some changes, after two days of works, gdc for D2.014 worked under gcc 4.3.4 (there were some problems in the default version when compiling the Phobos library). As a proof that it works look at it :D

goshawk@earth:/tmp/test/usr/local/gcc-4.3/bin$ ./gdc ~/test.d
goshawk@earth:/tmp/test/usr/local/gcc-4.3/bin$ ./a.out
Hello World, Reloaded

goshawk@earth:/tmp/test/usr/local/gcc-4.3/bin$ ./gdc -v
Using built-in specs.
Target: x86_64-unknown-linux-gnu
Configured with: ../configure –prefix=/usr/local/gcc-4.3 –enable-languages=c,d,c++ –disable-multilib –disable-shared
Thread model: posix
gcc version 4.3.4 (GCC)

Nice, isn’t it?

Now while Michael is focusing in fixing the D1 part, i started merging the lastest dmd D2 compiler in gdc. Making a diff against dmd2.014 and gdc2.014 i’m applying all the necessary patches in gdc for D2 2.032.

We opened a dedicated IRC channel in irc.freenode.net #d.gdc. Feel free to join!

You can find full instructions in how to compile gdc in our wiki page.

Any help, documentation, word on this challenge is appreciated. See you soon :D

Categories: D Tags: ,

How to set up worldcommunity.org grid on your pc

goshawk@jupiter:/$ boinccmd –project_attach www.worldcommunitygrid.org 110e33afe8e70a3da508640ff84f5ab2
World Community Grid logo

World Community Grid logo

If you have never heard about worldcommunity project it’s a good time to learn about it. it’s a project to create the largest public computing grid in the globe. With his client based on the boinc project, you can share your unused cpu cicles to compute data for this project. The data your computer will compute is for the growing of the culture, medicine and science.

If you have an Ubuntu server somewhere it’s very easy to set up the worldcommunity client there. Just open a terminal and write:

sudo aptitude install boinc-client

After you have installed the client, you can create an account in the worldcommunitygrid.org website. When you set it up you can do login and go to the  My profile page. In that page you will read the BOINC Account Key. Take note of it. Now open a terminal and type

boinccmd –project_attach www.worldcommunitygrid.org [BOINC Account Key]

And that’s all, boinc will connect to worldcommunity and download data to compute. When you don’t use your cp, it will start computing for the grid and when you need your cpu cicles, it will stop computing. :D

Categories: ubuntu Tags: ,