Talk:LDC

From D Wiki
Jump to: navigation, search

So I was attempting to get the prebuilt binaries up and running for MSVC but ran into some trouble.

I did the following:

Downloaded ldc2-0.15.1-win64-msvc.zip Extracted contents to a folder on the c:\ drive added the bin folder to the path Tried to compile Helloworld.d with "ldc2 Helloworld.d"

Got "missing dll" error so

Installed MS C++ 2013 redistributable. Tried to compile Helloworld.d with "ldc2 Helloworld.d"

Noticed that it was "*d.dll" that was missing meaning debug

Installed MS Visual studio express 2013 Tried to compile Helloworld.d with "ldc2 Helloworld.d"

Got "cannot find link.exe"

Added "C:\Program Files\Microsoft Visual Studio 12.0\VC\bin" to the path

Got "LINK : fatal error LNK1181: cannot open input file 'kernel32.lib'"

and now I have no idea what to do next? If there is a guide to get setup that would be nice to link here :)

So I found that this may be has to do with not having the Windows sdk installed.

I installed the windows sdk and added the C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib\ to the path ( it contains kernel32.lib )

I still get LINK : fatal error LNK1181: cannot open input file 'kernel32.lib'

So then i open Ldc2.conf and added the line:

"-L-L/Program Files (x86)/Windows Kits/8.1/Lib/winv6.3/um/x64" Tried to compile Helloworld.d with "ldc2 Helloworld.d"

Got Cannot open LIBCMT.lib

Then i added

"-L-L/Program Files (x86)/Microsoft Visual Studio 11.0/VC/lib/amd64"

Got a whole mess (37) of missing symbols from the math.obj

phobos2-ldc.lib(math.obj) : error LNK2019: unresolved external symbol trunc referenced in function _D3std4math4modfFNbNiNeeKeZe druntime-ldc.lib(math.obj) : error LNK2001: unresolved external symbol trunc phobos2-ldc.lib(math.obj) : error LNK2019: unresolved external symbol nearbyint referenced in function _D3std4math9nearbyintFNbNiNfeZe druntime-ldc.lib(math.obj) : error LNK2001: unresolved external symbol nearbyint phobos2-ldc.lib(math.obj) : error LNK2019: unresolved external symbol rint referenced in function _D3std4math4rintFNaNbNiNfeZe druntime-ldc.lib(math.obj) : error LNK2001: unresolved external symbol rint phobos2-ldc.lib(math.obj) : error LNK2019: unresolved external symbol round referenced in function _D3std4math5roundFNbNiNfeZe druntime-ldc.lib(math.obj) : error LNK2001: unresolved external symbol round phobos2-ldc.lib(math.obj) : error LNK2019: unresolved external symbol fma referenced in function _D3std4math3fmaFNaNbNiNfeeeZe druntime-ldc.lib(math.obj) : error LNK2001: unresolved external symbol fma druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol _fdclass referenced in function _D4core4stdc4math10fpclassifyFNaNbNiNefZi druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol _dclass referenced in function _D4core4stdc4math10fpclassifyFNaNbNiNedZi druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol _fdsign referenced in function _D4core4stdc4math7signbitFNaNbNiNefZi druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol _dsign referenced in function _D4core4stdc4math7signbitFNaNbNiNedZi druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol acosh referenced in function _D4core4stdc4math6acoshlFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol asinh referenced in function _D4core4stdc4math6asinhlFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol atanh referenced in function _D4core4stdc4math6atanhlFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol exp2 referenced in function _D4core4stdc4math5exp2lFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol expm1 referenced in function _D4core4stdc4math6expm1lFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol ilogb referenced in function _D4core4stdc4math6ilogblFNaNbNiNeeZi druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol log1p referenced in function _D4core4stdc4math6log1plFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol logb referenced in function _D4core4stdc4math5logblFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol scalbn referenced in function _D4core4stdc4math7scalbnlFNaNbNiNeeiZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol scalbln referenced in function _D4core4stdc4math8scalblnlFNaNbNiNeeiZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol cbrt referenced in function _D4core4stdc4math5cbrtlFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol hypot referenced in function _D4core4stdc4math6hypotlFNaNbNiNeeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol erf referenced in function _D4core4stdc4math4erflFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol erfc referenced in function _D4core4stdc4math5erfclFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol lgamma referenced in function _D4core4stdc4math7lgammalFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol tgamma referenced in function _D4core4stdc4math7tgammalFNaNbNiNeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol lrint referenced in function _D4core4stdc4math6lrintlFNaNbNiNeeZi druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol llrint referenced in function _D4core4stdc4math7llrintlFNaNbNiNeeZl druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol lround referenced in function _D4core4stdc4math7lroundlFNaNbNiNeeZi druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol llround referenced in function _D4core4stdc4math8llroundlFNaNbNiNeeZl druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol remquo referenced in function _D4core4stdc4math7remquolFNaNbNiNeeePiZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol copysignreferenced in function _D4core4stdc4math9copysignlFNaNbNiNeeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol nan referenced in function _D4core4stdc4math4nanlFNaNbNiNePaZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol nextafter referenced in function _D4core4stdc4math10nextafterlFNaNbNiNeeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol nexttoward referenced in function _D4core4stdc4math11nexttowardlFNaNbNiNeeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol fdim referenced in function _D4core4stdc4math5fdimlFNaNbNiNeeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol fmax referenced in function _D4core4stdc4math5fmaxlFNaNbNiNeeeZe druntime-ldc.lib(math.obj) : error LNK2019: unresolved external symbol fmin referenced in function _D4core4stdc4math5fminlFNaNbNiNeeeZe Helloworld.exe : fatal error LNK1120: 37 unresolved externals Error: C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\link.exe failed with status: 1120

Any Ideas?

Answer:

Use the "VS2013 x64 Native Tools Command Prompt" (in the VS2013 menu). It sets all required environment variables, including where to find the libraries.