<div dir="ltr">On 26 May 2013 15:03, Adam Wilson <span dir="ltr"><<a href="mailto:flyboynw@gmail.com" target="_blank">flyboynw@gmail.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Sat, 25 May 2013 18:24:41 -0700, Manu <<a href="mailto:turkeyman@gmail.com" target="_blank">turkeyman@gmail.com</a>> wrote:<br>
<br>
FYI. DMD did not work out-of-the-box on a vanilla VS2012/Win8 install. The Windows 8 SDK no longer includes the C++ compilers and VS2012 doesn't setup the Environment Variables used in sc.ini.<br></blockquote><div><br>
</div><div style>Ah wow, sorry! I had no idea!</div><div style>I tent to lag 2-3 revisions behind the head of VS (finally using 2010) ;)</div><div style>They seem to make every version worse!</div><div style><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

But the most annoying part is that using the Win8 SDK causes the linker to spit out dozens of external symbol resolution failures. It was at this point that I gave up.<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
I  might just add, that if you have Visual Studio installed (which I<br>
presume many Windows dev's do), then you don't need to do ANYTHING.<br>
DMD64 just works if VS is present.<br>
<br>
I didn't do a single thing to get DMD-Win64 working. And it's working great.<br>
<br>
You should make sure this is clear at the top of any wiki entry.<br>
<br>
Perhaps a future push to convince Walter to port DMD-Win32 to COFF/WinSDK<br>
aswell might be nice ;)<br>
Win32 is still an important platform for many (most?) users.<br>
<br>
<br>
On 18 December 2012 23:32, Gor Gyolchanyan <<a href="mailto:gor.f.gyolchanyan@gmail.com" target="_blank">gor.f.gyolchanyan@gmail.com</a>><u></u>wrote:<br>
<br>
</div><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Good day, fellow D developers.<br>
After spending much time figuring out how to make DMD work fluently under<br>
64-bit Windows 7 I've realized that this is not a trivial task and lots of<br>
people might have trouble with this, so I've decided to post my solution,<br>
that might save people a lot of time.<br>
As we know, there are compatibility problems with 32-bit DMD binaries,<br>
because they are compiled using DMC back-end, which can only produce OMF<br>
binaries, so in order to avoid problems with linking against externally<br>
compiled libraries, it's much easier to stick to 64-bit binaries, so that<br>
DMD will use the Visual Studio linker to produce compatible COFF binaries.<br>
Another problem is that 32-bit DMD binaries are linked against obsolete<br>
32-bit WinAPI libraries, which lack some very important functions, while<br>
the 64-bit binaries are required to link with the 64-bit libraries,<br>
supplied by the the Windows SDK.<br>
<br>
And here's how this could be arranged:<br>
<br>
1. Prepare your development folder.<br>
1.1. Create a folder with no spaces in its full path.<br>
 1.2. Store its full path in the '%DEV_DIR_ROOT%' environment variable.<br>
2. Get the Windows SDK.<br>
2.1. Download the Windows SDK.<br>
 2.1.1. Navigate to '<br>
<a href="http://msdn.microsoft.com/en-US/windows//bb980924.aspx" target="_blank">http://msdn.microsoft.com/en-<u></u>US/windows//bb980924.aspx</a>' in a web browser.<br>
 2.1.2. Under section 2 (number '2' in a green circle) click on the bold<br>
blue 'Install Now' link.<br>
2.1.3. In the opened window click in the blue 'Download' button at the<br>
bottom of the page.<br>
 2.1.4. Make sure, that the Windows SDK installer ('winsdk_web.exe') is<br>
downloaded.<br>
2.2. Install the downloaded Windows SDK.<br>
 2.2.1. Navigate to the folder, where the Windows SDK installer was<br>
downloaded in a file browser.<br>
2.2.2. Double-click on the installer and agree to security warnings to<br>
launch it.<br>
 2.2.3. Click next, read and agree to the license until you reach the<br>
'Install Locations' screen.<br>
2.2.4. Store the path under 'Destination Folder for Tools' in the<br>
'%DEV_DIR_MSWINSDK%' (e.g. 'C:\Program Files (x86)\Microsoft<br>
SDKs\Windows\v7.0A') and click 'Next >'.<br>
 2.3.3. On the 'Installation Options' uncheck everything except 'x64<br>
Libraries' and 'Visual C++ Compilers' and click 'Next >'.<br>
 2.3.4. Confirm that everything is correct and click 'Next >' to start<br>
installing.<br>
2.3.5. Make sure, tata the installation is completed succesfully.<br>
 2.3.6. Store the path to the installed Visual Studio C++ compiler into<br>
the '%DEV_DIR_MSVC%' environment variable (e.g. 'C:\Program Files<br>
(x86)\Microsoft Visual Studio 10.0\VC').<br>
3. Get the DMD.<br>
3.1. Navigate to '<a href="http://ftp.digitalmars.com/dmd2beta.zip" target="_blank">http://ftp.digitalmars.com/<u></u>dmd2beta.zip</a>' in a web<br>
browser.<br>
 3.2. Make sure, that the DMD compiler archive ('dmd2beta.zip') is<br>
downloaded.<br>
3.3. Unzip the archive into '%DEV_DIR_ROOT%\Tools', so that the 'dmd2'<br>
folder in the archive will end up in '%DEV_DIR_ROOT%\Tools\dmd2'.<br>
 3.4. Adapt the compiler configuration to the development environment.<br>
3.4.1. Open the file '%DEV_DIR_ROOT%\Tools\dmd2\<u></u>windows\bin\sc.ini' in a<br>
text editor.<br>
 3.4.2. Replace the line with 'LIB=' with the line<br>
'LIB="%DEV_DIR_WINSDK%\Lib\<u></u>x64";"%DEV_DIR_MSVC%\lib\<u></u>amd64";"%@P%\..\lib"'.<br>
 3.4.3. Add '-m64 -L/NOLOGO' to  the 'DFLAGS' variable.<br>
3.4.4. Remove the lines with 'VCINSTALLDIR=' and 'WindowsSdkDir='.<br>
 3.4.5. Replace the like with 'LINKCMD64=' with the line<br>
'LINKCMD64="%DEV_DIR_MSVC%\<u></u>bin\amd64\link.exe"'<br>
 Now "%DEV_DIR_ROOT%\Tools\dmd2\<u></u>windows\bin\dmd.exe" will always use the<br>
Windows SDK libraries and Visual C++ compiler to produce 64-bit COFF<br>
binaries.<br>
<br>
I hope I was helpful, because when I started to set up a development<br>
environment under 64-bit Windows 7, I went through a lot of problems to get<br>
here and I'd love to have this HOWTO at that time.<br>
<br>
--<br>
Bye,<br>
Gor Gyolchanyan.<br>
<br>
</blockquote></div></div></blockquote><span class="HOEnZb"><font color="#888888">
<br>
<br>
-- <br>
Adam Wilson<br>
IRC: LightBender<br>
Project Coordinator<br>
The Horizon Project<br>
<a href="http://www.thehorizonproject.org/" target="_blank">http://www.thehorizonproject.<u></u>org/</a><br>
</font></span></blockquote></div><br></div></div>