December 10, 2011
Updated binaries.
https://bitbucket.org/goshawk/gdc/downloads/gcc-4.6.1-tdm-1-gdc-7e22befef29c-20111210.7z

 * GDC now targets i686 processors.  Was targeting i386 which required substituting functions for atomic instructions.

I will release MinGW64 binaries soon then work on updating to tip and changing the default compiler to D2.

-Daniel

December 10, 2011
On 12/10/11, Daniel Green <venix1@gmail.com> wrote:
> Updated binaries. https://bitbucket.org/goshawk/gdc/downloads/gcc-4.6.1-tdm-1-gdc-7e22befef29c-20111210.7z

Doesn't work with TDM 4.6.1 bundle installer.

---------------------------
cc1d2.exe - Unable To Locate Component
---------------------------
This application has failed to start because libgmp-3.dll was not found. Re-installing the application may fix this problem.

The only place I've found gmp is here: http://sourceforge.net/projects/mingw/files/MinGW/Base/gmp/gmp-5.0.1-1/

And that one is libgmp-10.dll, not libgmp-3.dll.
December 10, 2011
Daniel Green:

> Updated binaries. https://bitbucket.org/goshawk/gdc/downloads/gcc-4.6.1-tdm-1-gdc-7e22befef29c-20111210.7z

I have tried the same install operations I have tried in a precedent post, and now it says it is not finding this: libgmp-3.dll

This thread that seems related: http://old.nabble.com/GCJ---libgmp-3.dll-was-not-found-td25234066.html

Bye,
bearophile
December 11, 2011
On 12/10/2011 12:27 PM, Andrej Mitrovic wrote:
> Doesn't work with TDM 4.6.1 bundle installer.
>
> The only place I've found gmp is here:
> http://sourceforge.net/projects/mingw/files/MinGW/Base/gmp/gmp-5.0.1-1/
>
> And that one is libgmp-10.dll, not libgmp-3.dll.
Did you install TDM-GCC or MinGW Stable?

TDM-GCC is built with shared libraries using gmp-4.3.2.  MinGW stable is built with static libraries.  The dll you listed comes from gmp-5.0.1. I am using the TDM-GCC build scripts to build the D compiler as well. You can find the files inside the "libexec/mingw32/4.6.1" folder of the TDM-GCC core download from the downloads page.
December 11, 2011
On 12/10/2011 4:38 PM, bearophile wrote:
> I have tried the same install operations I have tried in a precedent post, and now it says it is not finding this:
> libgmp-3.dll
Did you install TDM-GCC or MinGW Stable?

TDM-GCC is built with shared libraries using gmp-4.3.2.  MinGW stable is built with static libraries.  The dll you listed comes from gmp-5.0.1. I am using the TDM-GCC build scripts to build the D compiler as well. You can find the files inside the "libexec/mingw32/4.6.1" folder of the TDM-GCC core download from the downloads page.
December 11, 2011
Daniel Green:

> Did you install TDM-GCC or MinGW Stable?

Like in my precedent test I have installed "tdm-gcc-4.6.1 exe MinGW / sjlj": http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/tdm-gcc-4.6.1.exe/download


> TDM-GCC is built with shared libraries using gmp-4.3.2.  MinGW stable is built with static libraries.  The dll you listed comes from gmp-5.0.1. I am using the TDM-GCC build scripts to build the D compiler as well. You can find the files inside the "libexec/mingw32/4.6.1" folder of the TDM-GCC core download from the downloads page.

I have found that libgmp-3.dll and other needed dlls are in this directory, that I have added to the path: C:\MinGW32\libexec\gcc\mingw32\4.6.1

Now it's giving me:

...>gdc -v2 test.d
gdc: fatal error: -fuse-linker-plugin, but liblto_plugin-0.dll not found
compilation terminated.

Despite the C:\MinGW32\libexec\gcc\mingw32\4.6.1 directory contains liblto_plugin-0.dll too.

I feel stupid -.-
I'd like a single zip/rar/7zip with all needed files inside, with GCC too :-)

Bye,
bearophile
December 11, 2011
On 12/11/2011 2:39 AM, bearophile wrote:
> I feel stupid -.-
Sorry, it's really a packaging issue.  Switching GDC to target i686 changed some library and exectuable paths resulting in these issues.


> I'd like a single zip/rar/7zip with all needed files inside, with GCC too :-)
That could be done but I never liked the idea of requiring multiple GCC installations on any system.  That's why I chose this path.

I've repackaged and tested it from a clean install.

https://bitbucket.org/goshawk/gdc/downloads/gcc-4.6.1-tdm-1-gdc-7e22befef29c-20111211.7z

December 11, 2011
Sorry, it's really a packaging issue.  Switching GDC to target i686 changed some library and executable paths resulting in these issues.

I've repackaged and tested it from a clean install.

https://bitbucket.org/goshawk/gdc/downloads/gcc-4.6.1-tdm-1-gdc-7e22befef29c-20111211.7z
December 11, 2011
On Sun, Dec 11, 2011 at 10:29 AM, Daniel Green <venix1@gmail.com> wrote:
> On 12/11/2011 2:39 AM, bearophile wrote:
>>
>> I feel stupid -.-
>
> Sorry, it's really a packaging issue.  Switching GDC to target i686 changed some library and exectuable paths resulting in these issues.
>
>
>
>> I'd like a single zip/rar/7zip with all needed files inside, with GCC too :-)
>
> That could be done but I never liked the idea of requiring multiple GCC installations on any system.  That's why I chose this path.
>
> I've repackaged and tested it from a clean install.
>
> https://bitbucket.org/goshawk/gdc/downloads/gcc-4.6.1-tdm-1-gdc-7e22befef29c-20111211.7z
>

This one works for me on TDM GCC. I had the same gmp problem with the last one.

It seems calling spawn() in std.concurrency causes a segfault, but
that's a separate issue.
December 12, 2011
Daniel Green:

> I've repackaged and tested it from a clean install.
> 
> https://bitbucket.org/goshawk/gdc/downloads/gcc-4.6.1-tdm-1-gdc-7e22befef29c-20111211.7z

Now it compiles a working hello world, thank you :-)

A not stripped hello world is 3_908_177 bytes, much bigger than the binary produced by DMD, and it's 677_888 bytes stripped.
DMD 2.057beta+optilink produce a 932_892 bytes hello world binary, while using the same DMD+ulink it becomes 334_576 bytes.

If I compile the little D coins program here: http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D&article_id=151610

Using:
gdc -v2 coins.d -o coins.exe

When I run it it crashes immediately with no error messages :-(

Bye,
bearophile