这听起来像我之前在Gentoo上使用Hardened GCC时遇到的问题。
这是bug跟踪器:
<a href="http://d.puremagic.com/issues/show_bug.cgi?id=5278" rel="nofollow">
http://d.puremagic.com/issues/show_bug.cgi?id=5278
</A>
您可以通过重新编译DMD来解决它
这个补丁
然后将“-cflag = -fno-pie”添加到/linux/bin64/dmd.conf文件中的DFLAGS(或者相对于新编译的dmd二进制文件的任何位置)。
或者,找到一种方法来使用非强化GCC进行D编译。您可以构建自己的GCC副本,与Ubuntu的包装分开,然后说服DMD使用您的副本而不是Ubuntu。我为忘记细节而道歉,自从我与这个细节打过仗之后已经有一段时间了。