Hmmm, I found details on the net that recommended adding an [Environment64] section, which we did.
I don't seem to have VCINSTALLDIR or WindowsSdkDir variables on my system :/ .. that said, VC obviously works on my machine. It also seems potentially problematic that a variable would define a single install directory, since it's pretty common that programmers have multiple versions of VS on their machines. I have VS2010 and VS2012 on my machine. Simon had VS2012 and VS2013. I was also thinking it might be a mistake to keep phobos64.lib in the same folder as the 32bit omf libs. If paths are wrong, the link errors will only be understood by a programmer who understands compilers and lib/object formats in depth. Perhaps you should put them in a parallel lib64 directory, and hook that up in [Environment64] (I did that on my machine while trying to isolate problems and wort out where paths were coming from)? I reckon you should look into hooking up DirectX SDK patahing by default too since it's so common for basically any multimedia app. On 1 September 2013 17:42, Walter Bright <newshou...@digitalmars.com> wrote: > On 8/31/2013 7:05 PM, Manu wrote: > >> The only compiler you can realistically use productively in windows is >> DMD-Win64, and that doesn't work out of the box. >> We needed to mess with sc.ini for quite some time to get the stars >> aligned such >> that it would actually compile and find the linker+libs. >> >> Walter: DMD needs to internally detect installations of various versions >> of >> VisualStudio, and either 'just work', or amend sc.ini on its own. Or the >> installer needs to amend sc.ini. Either way, leaving it to a user to >> fiddle with >> an ini file just isn't acceptable. We had to google solutions to this >> problem, >> and even then, we had trouble with the paths we added to sc.ini; are >> spaces >> acceptable? Do they have quites around them?... >> I might also suggest that Microsoft supplied (ie, 'standard'), libraries >> should >> be automatically detected and path entries added in there too: >> C:\Program Files (x86)\Microsoft SDKs\... >> C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\... >> These are on basically every windows developers machine, and each of us >> had to >> configure them ourselves. >> > > The default sc.ini contains: > ----------------------------- > [Version] > version=7.51 Build 020 > > [Environment] > LIB="%@P%\..\lib";\dm\lib > DFLAGS="-I%@P%\..\..\src\**phobos" "-I%@P%\..\..\src\druntime\**import" > LINKCMD=%@P%\link.exe > LINKCMD64=%VCINSTALLDIR%bin\**amd64\link.exe > VCINSTALLDIR=%VCINSTALLDIR% > WindowsSdkDir=%WindowsSdkDir% > ------------------------------**---- > > When I installed VC 2010, it set the environment variables VCINSTALLDIR > and WindowsSdkDir. Then, the default sc.ini should "just work". > > What went wrong, specifically? > >