Windows 64

Rainer Schuetze r.sagitario at gmx.de
Mon Oct 7 10:48:06 PDT 2013



On 07.10.2013 12:21, "Casper Færgemand" <shorttail at hotmail.com>" wrote:
> On Monday, 7 October 2013 at 07:03:39 UTC, Rainer Schuetze wrote:
>> The linker does not find the import libraries from the Windows SDK, so
>> it hits the 32-bit libraries that come with dmd.
>>
>> The released sc.ini does not work with VS2012+ or a Windows SDK 8, you
>> should add the following lines to it:
>>
>> [Environment64]
>> LIB=%@P%\..\lib;%VCINSTALLDIR%\lib\amd64;%WindowsSdkDir%\Lib\win8\um\x64
>> ;; for some additional improvements
>> PATH=%PATH%;%VCINSTALLDIR%\bin\x86_amd64;%VCINSTALLDIR%\..\Common7\IDE
>> DFLAGS=%DFLAGS% -L/OPT:NOICF
>
> Thank you. I added the lines and I'm still getting the same 103
> unresolved externals. Commenting out stuff in the file makes dmd throws
> other errors, so I'm sure I'm editing the correct sc.ini.
> Where are the correct libraries supposed to be exactly?

Maybe the WindowsSdkDir environment variable is not set in your console. 
For the Windows 8 SDK, the standard location of the x64 libraries is

"c:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x64"

for the Windows 7 SDK or previous (replace the version):

"c:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib\x64"

so the entry with expanded environment variables on my system using VS 
2012 and Windows SDK 8 is:

LIB=%@P%\..\lib;"c:\Program Files (x86)\Microsoft Visual Studio 
11.0\VC\lib\amd64";"c:\Program Files (x86)\Windows Kits\8.0\Lib\win8\um\x64"

I don't think the quotes are necessary, but the original sc.ini has 
them, too.


More information about the Digitalmars-d-learn mailing list