Frontend and backend communication

Jacob Carlborg doob at me.com
Thu Jul 28 23:21:24 PDT 2011


On 2011-07-28 21:55, Dainius (GreatEmerald) wrote:
> On Thu, Jul 28, 2011 at 10:37 PM, Kai Meyer<kai at unixlords.com>  wrote:
>> On 07/27/2011 04:40 PM, Dainius (GreatEmerald) wrote:
>>
>> One reason for the confusing responses is that in your original post you
>> said:
>> "a frontend (a library)", "a backend (an
>> executable)", "Shuffle() is a backend function", and "PlaySound()
>> is a frontend one".
>
> D'oh I missed! I did indeed mean the other way round.
>
> But yea, I have already implemented a function table. It seems to be
> working relatively fine for now - it compiled, but doesn't want to
> link just yet. On Windows, it says that there are undefined symbols,
> even though they are quite clearly defined, and then also quite a few
> more mangled linker errors; On Linux, my main development platform,
> however, I have hit a pretty obvious issue - there is no
> libphobos2.so, and I can't link against libphobos2.a because of this:
>
>      ld: /lib64/libphobos2.a(object_.o): relocation R_X86_64_32 against
> `.data' can not be used when making a shared object; recompile with
> -fPIC
>
> And then there's another problem in that right now the backend is
> still written in C and it uses D as a static library, and linking
> against that provides a similar error. Of course, since I will have to
> rewrite the backend in D to begin with, this might not be such a big
> of an issue as the first one.

Yeah, phobos/druntime doesn't work as a dynamic library yet on Linux or 
Windows.

-- 
/Jacob Carlborg


More information about the Digitalmars-d-learn mailing list