September 09, 2012
On 9/9/2012 1:20 PM, Nick Sabalausky wrote:
> Sorry if this was answered in a previous thread, but how does it work
> with linking and object file formats?


Dmd Win64 uses MS-Coff and Microsoft's linker and VC's runtime libraries.

September 09, 2012
On Sun, 09 Sep 2012 13:35:19 -0700
Walter Bright <newshound2@digitalmars.com> wrote:

> On 9/9/2012 1:20 PM, Nick Sabalausky wrote:
> > Sorry if this was answered in a previous thread, but how does it work with linking and object file formats?
> 
> 
> Dmd Win64 uses MS-Coff and Microsoft's linker and VC's runtime libraries.
> 

Not to disparage optlink (I haven't really had the problems some
people have had, at least not in a long time), but: Awesome :)

Any particular version requirements on MSVC? Or too early to tell?

September 09, 2012
On 9/9/2012 1:56 PM, Nick Sabalausky wrote:
> Any particular version requirements on MSVC? Or too early to tell?

Beats me. I just bought VC and am making it work with that.


September 10, 2012
Am 09.09.2012 23:37, schrieb Walter Bright:
> On 9/9/2012 1:56 PM, Nick Sabalausky wrote:
>> Any particular version requirements on MSVC? Or too early to tell?
>
> Beats me. I just bought VC and am making it work with that.
>
>

Are we going to get propper Dll support? I mean importing data symbols and a dll compatible c-runtime.

Kind Regards
Benjamin Thaut
September 10, 2012
On 2012-09-09 23:37, Walter Bright wrote:
> On 9/9/2012 1:56 PM, Nick Sabalausky wrote:
>> Any particular version requirements on MSVC? Or too early to tell?
>
> Beats me. I just bought VC and am making it work with that.

Since you just bought it, and the latest version seems to be 2012, I would guess on that one.

-- 
/Jacob Carlborg
September 10, 2012
On 9/9/2012 10:07 PM, Benjamin Thaut wrote:
> Am 09.09.2012 23:37, schrieb Walter Bright:
>> On 9/9/2012 1:56 PM, Nick Sabalausky wrote:
>>> Any particular version requirements on MSVC? Or too early to tell?
>>
>> Beats me. I just bought VC and am making it work with that.
>>
>>
>
> Are we going to get propper Dll support? I mean importing data symbols and a dll
> compatible c-runtime.

It'll probably work like Win32 DLLs.


September 10, 2012
Am 10.09.2012 09:07, schrieb Walter Bright:
> On 9/9/2012 10:07 PM, Benjamin Thaut wrote:
>> Am 09.09.2012 23:37, schrieb Walter Bright:
>>> On 9/9/2012 1:56 PM, Nick Sabalausky wrote:
>>>> Any particular version requirements on MSVC? Or too early to tell?
>>>
>>> Beats me. I just bought VC and am making it work with that.
>>>
>>>
>>
>> Are we going to get propper Dll support? I mean importing data symbols
>> and a dll
>> compatible c-runtime.
>
> It'll probably work like Win32 DLLs.
>
>

Hm, a major showstopper for the current DLL support ist, that dmd does not generate code to correctly import data symbols.

Kind Regards
Benjamin Thaut

-- 
Kind Regards
Benjamin Thaut
September 10, 2012
On 9/10/2012 12:56 AM, Benjamin Thaut wrote:
> Hm, a major showstopper for the current DLL support ist, that dmd does not
> generate code to correctly import data symbols.

What is the bugzilla entry for that?

September 10, 2012
Am 10.09.2012 10:35, schrieb Walter Bright:
> On 9/10/2012 12:56 AM, Benjamin Thaut wrote:
>> Hm, a major showstopper for the current DLL support ist, that dmd does
>> not
>> generate code to correctly import data symbols.
>
> What is the bugzilla entry for that?
>

Its a pretty old ticket,

Rainer Schulze implemented library code that patches the data symbol tables manually to get phobos to work as a DLL but the patch is quite old:

http://d.puremagic.com/issues/show_bug.cgi?id=4071

Look at the dll_patchImportRelocations function in the druntime patch

Usually the compiler should generate code to get the correct import address for each data symbol if I understood it correctly.

Also there are a lot more issues with dlls,
you can't export certain symbols that are needed, for example the module info internal symbols. Rainer fixed this by adding a -exportall switch to dmd.

And of course there are the runtime issues with the TLS storage and Module (De)Initialization.

-- 
Kind Regards
Benjamin Thaut
September 10, 2012
On Sun, 09 Sep 2012 23:29:53 -0700, Jacob Carlborg <doob@me.com> wrote:

> On 2012-09-09 23:37, Walter Bright wrote:
>> On 9/9/2012 1:56 PM, Nick Sabalausky wrote:
>>> Any particular version requirements on MSVC? Or too early to tell?
>>
>> Beats me. I just bought VC and am making it work with that.
>
> Since you just bought it, and the latest version seems to be 2012, I would guess on that one.

2012 is only on sale as of Sept 4th. However, I don't see why he would have needed to buy it. You can get the full 2012 compiler for free here: http://go.microsoft.com/?linkid=9810160
If you need DirectX download the Windows SDK here: http://msdn.microsoft.com/en-US/windows/hardware/hh852363

-- 
Adam Wilson
IRC: LightBender
Project Coordinator
The Horizon Project
http://www.thehorizonproject.org/