Am Wed, 16 Oct 2013 23:34:11 +0100 schrieb Iain Buclaw <ibuc...@ubuntu.com>:
> > > > > > Hi, sorry for the necro, but this discussion seemed to be somehow > > relevant to the problem I'm currently having. I have built GDC for > > ARM (on a Raspberry Pi) and I wanted to build dub [1]. This build > > fails with the following error: > > > > /usr/local/stow/gdc-4.8.1/include/d/4.8.1/arm-linux-gnueabihf/core/time.di:224: > > Error: this cannot be interpreted at compile time, because it has no > > available source code > > /usr/local/stow/gdc-4.8.1/include/d/4.8.1/std/net/curl.d:195: > > called from here: dur(2L) > > > > Is there any way to emit the plain .d files when building GDC, or > > some other workaround...? > > > > Actually, as I was typing this, it seems there is a workaround [2]. > > Still, there must be a nicer way? I must admit I don't get the > > whole .di thing. > > > > On Ubuntu, there is no workaround other than patching gcc proper with > the Ubuntu patches for multiarch. Wait - this is a different problem. It's not a path problem, it's really a .di/.d problem. DMD seems to ship .d include files for druntime now, they're no longer shipping the .di files. The archlinux packages even do this for gdc. Some stuff now depends on this, as having the source code available allows more stuff to work in ctfe. We have to fix this in our libdruntime makefile, we shouldn't generate the .di files anymore. Instead we should directly install the .d files.