dmd.conf's -L--export-dynamic prevents my compiler from working

Marco Leise Marco.Leise at gmx.de
Sun Dec 18 14:36:01 PST 2011


Am 18.12.2011, 20:58 Uhr, schrieb mta`chrono  
<chrono at mta-international.net>:

> Your problem seems to be really frustrating. I'm using ubuntu amd64 and
> everything is fine here.
>
> I'd like to reproduce your issue. Can you paste a link to your gentoo
> installation iso file. I'll setup a VM here.
>
> Did you install dmd,druntime,phobos from sources or some kind of
> packages/repo?

Uhm, Gentoo is a source distribution. The outcome of a package  
installation can depend on many things, such as used compiler,  
enabled/disabled features for the package and compiler/linker flags.
That said, I am currently maintaining this ebuild (package  
information/installation file):  
http://gentoo-overlays.zugaina.org/sunrise/portage/dev-lang/dmd/dmd-2.056.ebuild  
It is a continuation of the abandoned "d-overlay" ebuild and the dmd.conf  
generation code originates from there. On a positive note, Ubuntu recently  
had a problem with dmd when they switched to --as-needed, that does not  
occur with the Gentoo ebuild, since --as-needed was already in use there  
for a while.
Since I am not an expert with Gentoo ebuilds or executable linking, I did  
not change the ebuild much and it works for me. The stack traces are in  
deed the reason for --export-dynamic. If there is anything that should be  
resolved in dmd.conf for Gentoo, instead of the compiler itself, then I am  
the one to bug.

Installation goes like this (assuming layman has been installed):

1. Add official external repository for wannabe packages:
layman -a sunrise

2. Install latest dmd (needs to be unmasked in  
/etc/portage/package.keywords first):
emerge dmd


More information about the Digitalmars-d mailing list