June 02, 2013 Re: DMD under 64-bit Windows 7 HOWTO | ||||
---|---|---|---|---|
| ||||
Posted in reply to Manu | On 5/25/2013 8:24 PM, Manu wrote:
> I might just add, that if you have Visual Studio installed (which I
> presume many Windows dev's do), then you don't need to do ANYTHING.
> DMD64 just works if VS is present.
>
> I didn't do a single thing to get DMD-Win64 working. And it's working great.
>
> You should make sure this is clear at the top of any wiki entry.
>
> Perhaps a future push to convince Walter to port DMD-Win32 to
> COFF/WinSDK aswell might be nice ;)
> Win32 is still an important platform for many (most?) users.
>
>
under VS2012 I had to edit sc.ini to point directly to the linker:
LINKCMD64=C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64\link.exe
and in visuald add the win8 sdk lib path to the lib directories:
C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x64
And from there it just worked
The other variables the stock sc.ini uses are only set if you run vsvars32.bat (and the newer batch files only enable 1 platform at a time instead of all of them which can trip people up trying to do everything from a single command line)
|
June 02, 2013 Re: DMD under 64-bit Windows 7 HOWTO | ||||
---|---|---|---|---|
| ||||
Posted in reply to Sean Cavanaugh | On Sat, 01 Jun 2013 17:50:46 -0700, Sean Cavanaugh <WorksOnMyMachine@gmail.com> wrote: > On 5/25/2013 8:24 PM, Manu wrote: >> I might just add, that if you have Visual Studio installed (which I >> presume many Windows dev's do), then you don't need to do ANYTHING. >> DMD64 just works if VS is present. >> >> I didn't do a single thing to get DMD-Win64 working. And it's working great. >> >> You should make sure this is clear at the top of any wiki entry. >> >> Perhaps a future push to convince Walter to port DMD-Win32 to >> COFF/WinSDK aswell might be nice ;) >> Win32 is still an important platform for many (most?) users. >> >> > > under VS2012 I had to edit sc.ini to point directly to the linker: > > LINKCMD64=C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64\link.exe > > and in visuald add the win8 sdk lib path to the lib directories: > > C:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x64 > > And from there it just worked > > The other variables the stock sc.ini uses are only set if you run vsvars32.bat (and the newer batch files only enable 1 platform at a time instead of all of them which can trip people up trying to do everything from a single command line) > Ok, so how did you get VisualD to not use OPTLINK? -- Adam Wilson IRC: LightBender Project Coordinator The Horizon Project http://www.thehorizonproject.org/ |
June 02, 2013 Re: DMD under 64-bit Windows 7 HOWTO | ||||
---|---|---|---|---|
| ||||
Posted in reply to Adam Wilson | On 6/1/2013 8:57 PM, Adam Wilson wrote:
>
> Ok, so how did you get VisualD to not use OPTLINK?
>
I have my project settings set to 'Combined compile and link' (bottom-most option of the General part of the project settings).
dmd is invoking the linker specified in the sc.ini this way
(its a small and monolithic executable)
|
June 02, 2013 Re: DMD under 64-bit Windows 7 HOWTO | ||||
---|---|---|---|---|
| ||||
Posted in reply to Sean Cavanaugh | On 6/1/2013 11:06 PM, Sean Cavanaugh wrote:
> On 6/1/2013 8:57 PM, Adam Wilson wrote:
>>
>> Ok, so how did you get VisualD to not use OPTLINK?
>>
>
> I have my project settings set to 'Combined compile and link'
> (bottom-most option of the General part of the project settings).
>
> dmd is invoking the linker specified in the sc.ini this way
>
> (its a small and monolithic executable)
>
>
The other configuration types there seemed to work for me as well, so I'm having trouble even breaking it.
|
June 02, 2013 Re: DMD under 64-bit Windows 7 HOWTO | ||||
---|---|---|---|---|
| ||||
Posted in reply to Paulo Pinto | >
> The last issue is the announcement that VS 2012 update 3 is the last one and developers will need to buy VS.Next for the remaining C++11 updates and the by side updates are actually not going to happen.
>
I think they will start a new release circle of product, but compiler tools will remain free as beer.
|
June 02, 2013 Re: DMD under 64-bit Windows 7 HOWTO | ||||
---|---|---|---|---|
| ||||
Posted in reply to Sean Cavanaugh | On Sat, 01 Jun 2013 21:06:04 -0700, Sean Cavanaugh <WorksOnMyMachine@gmail.com> wrote: > On 6/1/2013 8:57 PM, Adam Wilson wrote: >> >> Ok, so how did you get VisualD to not use OPTLINK? >> > > I have my project settings set to 'Combined compile and link' (bottom-most option of the General part of the project settings). > > dmd is invoking the linker specified in the sc.ini this way > > (its a small and monolithic executable) > > Weird, I have the same option set and it's still trying to invoke OPTLINK. OPTLINK is erroring out on the x64 COFF files so I know it's not DMD... -- Adam Wilson IRC: LightBender Project Coordinator The Horizon Project http://www.thehorizonproject.org/ |
June 02, 2013 Re: DMD under 64-bit Windows 7 HOWTO | ||||
---|---|---|---|---|
| ||||
Posted in reply to Sean Cavanaugh | On Sat, 01 Jun 2013 21:08:48 -0700, Sean Cavanaugh <WorksOnMyMachine@gmail.com> wrote: > On 6/1/2013 11:06 PM, Sean Cavanaugh wrote: >> On 6/1/2013 8:57 PM, Adam Wilson wrote: >>> >>> Ok, so how did you get VisualD to not use OPTLINK? >>> >> >> I have my project settings set to 'Combined compile and link' >> (bottom-most option of the General part of the project settings). >> >> dmd is invoking the linker specified in the sc.ini this way >> >> (its a small and monolithic executable) >> >> > > The other configuration types there seemed to work for me as well, so I'm having trouble even breaking it. And I can't seem to get it to work. I am now getting a stack overflow from pipedmd trying to build an x64 DLL using VS2012. -- Adam Wilson IRC: LightBender Project Coordinator The Horizon Project http://www.thehorizonproject.org/ |
June 03, 2013 Re: DMD under 64-bit Windows 7 HOWTO | ||||
---|---|---|---|---|
| ||||
Posted in reply to Adam Wilson |
On 03.06.2013 01:38, Adam Wilson wrote:
> On Sat, 01 Jun 2013 21:08:48 -0700, Sean Cavanaugh
> <WorksOnMyMachine@gmail.com> wrote:
>
>> On 6/1/2013 11:06 PM, Sean Cavanaugh wrote:
>>> On 6/1/2013 8:57 PM, Adam Wilson wrote:
>>>>
>>>> Ok, so how did you get VisualD to not use OPTLINK?
>>>>
>>>
>>> I have my project settings set to 'Combined compile and link'
>>> (bottom-most option of the General part of the project settings).
>>>
>>> dmd is invoking the linker specified in the sc.ini this way
>>>
>>> (its a small and monolithic executable)
>>>
>>>
>>
>> The other configuration types there seemed to work for me as well, so
>> I'm having trouble even breaking it.
>
> And I can't seem to get it to work. I am now getting a stack overflow
> from pipedmd trying to build an x64 DLL using VS2012.
>
pipedmd is a program to demangle symbols in linker output and to monitor file accesses for better library dependencies. It hasn't been tested too well with the microsoft linker (I guess it might have problem with 64-bit executables), so you might try to disable it by switching off both "demangle names in link errors" and "Monitor optlink dependencies" in the global Visual D settings.
|
June 03, 2013 Re: DMD under 64-bit Windows 7 HOWTO | ||||
---|---|---|---|---|
| ||||
Posted in reply to Rainer Schuetze | On Mon, 03 Jun 2013 14:36:45 -0700, Rainer Schuetze <r.sagitario@gmx.de> wrote: > > > On 03.06.2013 01:38, Adam Wilson wrote: >> On Sat, 01 Jun 2013 21:08:48 -0700, Sean Cavanaugh >> <WorksOnMyMachine@gmail.com> wrote: >> >>> On 6/1/2013 11:06 PM, Sean Cavanaugh wrote: >>>> On 6/1/2013 8:57 PM, Adam Wilson wrote: >>>>> >>>>> Ok, so how did you get VisualD to not use OPTLINK? >>>>> >>>> >>>> I have my project settings set to 'Combined compile and link' >>>> (bottom-most option of the General part of the project settings). >>>> >>>> dmd is invoking the linker specified in the sc.ini this way >>>> >>>> (its a small and monolithic executable) >>>> >>>> >>> >>> The other configuration types there seemed to work for me as well, so >>> I'm having trouble even breaking it. >> >> And I can't seem to get it to work. I am now getting a stack overflow >> from pipedmd trying to build an x64 DLL using VS2012. >> > > pipedmd is a program to demangle symbols in linker output and to monitor file accesses for better library dependencies. It hasn't been tested too well with the microsoft linker (I guess it might have problem with 64-bit executables), so you might try to disable it by switching off both "demangle names in link errors" and "Monitor optlink dependencies" in the global Visual D settings. Oops, I forgot to update this. It actually wasn't within pipedmd, I was able to pin it down to dmd itself. There are some REALLY strange interactions with -H and -D in DMD on Windows, if you only specify one of those two options DMD will act like no command line was received and display the command line switch listing, if you use both it will give you the stack overflow. This is appearing with the stock DLL template in Visual D. I haven't submitted a bug report because I am not even sure who is at fault, DMD I think, and even then I don't really know what's wrong. -- Adam Wilson IRC: LightBender Project Coordinator The Horizon Project http://www.thehorizonproject.org/ |
June 04, 2013 Re: DMD under 64-bit Windows 7 HOWTO | ||||
---|---|---|---|---|
| ||||
Posted in reply to Sean Cavanaugh | On 6/1/2013 11:08 PM, Sean Cavanaugh wrote:
> On 6/1/2013 11:06 PM, Sean Cavanaugh wrote:
>> On 6/1/2013 8:57 PM, Adam Wilson wrote:
>>>
>>> Ok, so how did you get VisualD to not use OPTLINK?
>>>
>>
>> I have my project settings set to 'Combined compile and link'
>> (bottom-most option of the General part of the project settings).
>>
>> dmd is invoking the linker specified in the sc.ini this way
>>
>> (its a small and monolithic executable)
>>
>>
>
> The other configuration types there seemed to work for me as well, so
> I'm having trouble even breaking it.
I remember having to add in -m64 to the command line int he settings somewhere as well, but this is from memory and I'm writing this from work from memory before I forget again :)
|
Copyright © 1999-2021 by the D Language Foundation