On Wednesday, 6 August 2014 at 05:20:27 UTC, Walter Bright wrote:
On 8/3/2014 8:51 PM, Manu via Digitalmars-d-announce wrote:
This windiows installer went wrong on me.
First, it tried to uninstall, it offered to uninstall from
'C:\D'. My DMD
install is 'C:\dev\D'... The path was presented in a greyed
out textbox that I
couldn't type in to correct it, and no button to select the
true install location.
The uninstall step failed.
Then when reinstalling I was given the option where to
install, I chose
'C:\dev\D' and it installed over the top of my existing
install, and wiped my
sc.ini file. So I need to configure the DirectX SDK paths
again.
Please file these on bugzilla as 2 bug reports.
https://issues.dlang.org/enter_bug.cgi
Side note:
I still think the installer really should detect the DXSDK;
it's a Microsoft
library, and virtually any multimedia software developed with
VS2010 or prior
will depend on it (It's merged into the WinSDK since DX2012).
The DXSDK install paths are:
Include: C:\Program Files (x86)\Microsoft DirectX SDK (June
2010)\Include
Lib: C:\Program Files (x86)\Microsoft DirectX SDK (June
2010)\Lib\x64
The "(June 2010)" part is a safe assumption, it's the last
released one, and it
will remain so since it's now bundled with the WinSDK for more
recent visual
studio releases. It's the only one available on the Microsoft
website.
As I see it, if we profess to support VS2010 and prior, then
we should detect
the DXSDK paths in the installer, otherwise software that
builds fine in VS2012+
won't work with VS2010 without user intervention, and that
will almost certainly
lead to posts on this forum.
One of the reasons I delayed so long in supporting VS is
because Microsoft changes things around with every release,
making trying to support whatever version the customer has is a
constant configuration/testing nightmare, consuming a great
deal of time and effort with little payback.
With dmc, this is not a problem.
As an aside, one thing I find difficult to understand is why
experienced C++ developers find it so hard to set an
environment variable (or one in the sc.ini) pointing to where
the right .h files are and the right .lib files are.
I don't think it's difficult for them, I think they often just
don't know they can. Environment variables just aren't as well
known on Windows these days. If you are an 18 year old getting
into programming you likely have never even heard of environment
variables or batch files and may not even know how to use the
command prompt (or open it for that matter). Windows Vista came
out when they were 10 years old and the days of having to know
and use the command prompt for typical users were long gone by
this point. I'm thirty so I knew and used MS-DOS as a kid (I had
to) but if you've never used these things how would you know you
could?
Even if you are an experienced programmer having used Visual
Studio or some other IDE for years you'd likely not have had to
adjust environment variables to get anything to work.
Manu knows these things, of course, but his it-should-just-work
complaints probably go a long way to helping people who don't
know these things.
Heck, I just cribbed them from where Microsoft set them in its
own command prompt shortcut "Visual Studio x64 Win64 Command
Prompt (2010)". For example, clicking on the shortcut and
typing "set" gives:
[...]
I added the same style of command prompt for DMD to the installer
a couple years ago. One for 64-bit and one for 32-bit.