If building with vs2015, you maybe see.

missing io.h direct.h crtdefs.h:


can't find kernel32.lib:

LINK : fatal error LNK1181: cannot open input file 'kernel32.lib'
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 
14.0\VC\BIN\amd64\link.EXE"' : return code '0x49d'


If we start `VS2015 x64 Native Tools Command Prompt` and type `set`, we can get:

INCLUDE=C:\Program Files (x86)\Microsoft Visual Studio 
14.0\VC\INCLUDE;C:\Program Files (x86)\Microsoft Visual Studio 
14.0\VC\ATLMFC\INCLUDE;C:\Program Files (x86)\Windows Kits\10\include\w
inrt\ucrt;C:\Program Files (x86)\Windows 
Kits\NETFXSDK\4.6\include\um;C:\Program Files (x86)\Windows 
Kits\10\include\winrt\shared;C:\Program Files (x86)\Windows 
Kits\10\include\winrt\um;C:\
Program Files (x86)\Windows Kits\10\include\winrt\winrt;
LIB=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\LIB\amd64;C:\Program 
Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\LIB\amd64;C:\Program Files 
(x86)\Windows Kits\10\lib\winrt
\ucrt\x64;C:\Program Files (x86)\Windows 
Kits\NETFXSDK\4.6\lib\um\x64;C:\Program Files (x86)\Windows 
Kits\10\lib\winrt\um\x64;
LIBPATH=C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Program Files 
(x86)\Microsoft Visual Studio 14.0\VC\LIB\amd64;C:\Program Files 
(x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\LIB\am
d64;C:\Program Files (x86)\Windows Kits\10\UnionMetadata;C:\Program Files 
(x86)\Windows Kits\10\References;C:\Program Files (x86)\Windows 
Kits\10\References\Windows.Foundation.UniversalApiC
ontract\1.0.0.0;C:\Program Files (x86)\Windows 
Kits\10\References\Windows.Foundation.FoundationContract\1.0.0.0;C:\Program 
Files (x86)\Windows Kits\10\References\indows.Networking.Connectiv
ity.WwanContract\1.0.0.0;C:\Program Files (x86)\Microsoft SDKs\Windows 
Kits\10\ExtensionSDKs\Microsoft.VCLibs\14.0\References\CommonConfiguration\neutral;


The `C:\Program Files (x86)\Windows Kits\10\include\winrt\shared;C:\Program 
Files (x86)\Windows Kits\10\include\winrt\um;C:\
Program Files (x86)\Windows Kits\10\include\winrt\winrt;` and `C:\Program Files 
(x86)\Windows Kits\10\lib\winrt\um\x64;` don't exist at all.

And we can find that `C:\Program Files (x86)\Windows 
Kits\10\Include\10.0.10240.0` have `km` `mmos` `shared` `ucrt` `um` `winrt`.

I don't know the real solution for it. But I have a workaround. I ever built 
llvm/clang for ycmd with vs2015 and solve it with the following 
workaround(llvm/clang only need the headers but not library).

Use the junction from 
http://www.microsoft.com/technet/sysinternals/FileAndDisk/Junction.mspx.


cd C:\Program Files (x86)\Windows Kits\10\Include
junction winrt 10.0.10240.0
junction km 10.0.10240.0\km
junction mmos 10.0.10240.0\mmos
junction shared 10.0.10240.0\shared
junction ucrt 10.0.10240.0\ucrt
junction um 10.0.10240.0\um


cd C:\Program Files (x86)\Windows Kits\10\Lib
junction winrt 10.0.10240.0


While there is still some error(I have set XPM=no):
Z:\vim\src\version.c(2621) : warning C6336: Arithmetic operator has precedence 
over question operator, use parentheses to clarify intent.
        link /RELEASE /nologo /subsystem:windows /LTCG:STATUS -out:gvim.exe 
.\ObjGXOYHAMD64\blowfish.obj  .\ObjGXOYHAMD64\buffer.obj  
.\ObjGXOYHAMD64\charset.obj  .\ObjGXOYHAMD64\crypt.obj
 .\ObjGXOYHAMD64\crypt_zip.obj  .\ObjGXOYHAMD64\diff.obj  
.\ObjGXOYHAMD64\digraph.obj  .\ObjGXOYHAMD64\edit.obj  .\ObjGXOYHAMD64\eval.obj 
 .\ObjGXOYHAMD64\ex_cmds.obj  .\ObjGXOYHAMD64\ex_cm
ds2.obj  .\ObjGXOYHAMD64\ex_docmd.obj  .\ObjGXOYHAMD64\ex_eval.obj  
.\ObjGXOYHAMD64\ex_getln.obj  .\ObjGXOYHAMD64\fileio.obj  
.\ObjGXOYHAMD64\fold.obj  .\ObjGXOYHAMD64\getchar.obj  .\ObjGXO
YHAMD64\hardcopy.obj  .\ObjGXOYHAMD64\hashtab.obj  .\ObjGXOYHAMD64\main.obj  
.\ObjGXOYHAMD64\mark.obj  .\ObjGXOYHAMD64\mbyte.obj  
.\ObjGXOYHAMD64\memfile.obj  .\ObjGXOYHAMD64\memline.obj  .
\ObjGXOYHAMD64\menu.obj  .\ObjGXOYHAMD64\message.obj  .\ObjGXOYHAMD64\misc1.obj 
 .\ObjGXOYHAMD64\misc2.obj  .\ObjGXOYHAMD64\move.obj  
.\ObjGXOYHAMD64\normal.obj  .\ObjGXOYHAMD64\ops.obj  .\
ObjGXOYHAMD64\option.obj  .\ObjGXOYHAMD64\os_mswin.obj  
.\ObjGXOYHAMD64\winclip.obj  .\ObjGXOYHAMD64\os_win32.obj  
.\ObjGXOYHAMD64\pathdef.obj  .\ObjGXOYHAMD64\popupmnu.obj  .\ObjGXOYHAMD64
\quickfix.obj  .\ObjGXOYHAMD64\regexp.obj  .\ObjGXOYHAMD64\screen.obj  
.\ObjGXOYHAMD64\search.obj  .\ObjGXOYHAMD64\sha256.obj  
.\ObjGXOYHAMD64\spell.obj  .\ObjGXOYHAMD64\syntax.obj  .\ObjGX
OYHAMD64\tag.obj  .\ObjGXOYHAMD64\term.obj  .\ObjGXOYHAMD64\ui.obj  
.\ObjGXOYHAMD64\undo.obj  .\ObjGXOYHAMD64\window.obj  .\ObjGXOYHAMD64\vim.res 
.\ObjGXOYHAMD64\dimm_i.obj .\ObjGXOYHAMD64\
glbl_ime.obj .\ObjGXOYHAMD64\gui.obj  .\ObjGXOYHAMD64\gui_beval.obj  
.\ObjGXOYHAMD64\gui_w32.obj  .\ObjGXOYHAMD64\os_w32exe.obj 
.\ObjGXOYHAMD64\gui_dwrite.obj .\ObjGXOYHAMD64\if_ole.obj
 .\ObjGXOYHAMD64\if_python.obj .\ObjGXOYHAMD64\if_python3.obj    
.\ObjGXOYHAMD64/if_sniff.obj .\ObjGXOYHAMD64/if_cscope.obj 
.\ObjGXOYHAMD64/netbeans.obj   .\ObjGXOYHAMD64\version.obj oldnam
es.lib kernel32.lib advapi32.lib shell32.lib gdi32.lib  comdlg32.lib ole32.lib 
uuid.lib /machine:AMD64 gdi32.lib version.lib   winspool.lib comctl32.lib 
advapi32.lib shell32.lib  /machine:A
MD64 /nodefaultlib libcmt.lib oleaut32.lib user32.lib shell32.lib     
/nodefaultlib:python27.lib /nodefaultlib:python35.lib    WSock32.lib  
/PDB:gvim.pdb -debug
blowfish.obj : error LNK2001: unresolved external symbol memmove
blowfish.obj : error LNK2001: unresolved external symbol __stdio_common_vsscanf
...
libcmt.lib(exe_winmain.obj) : error LNK2001: unresolved external symbol 
__telemetry_main_invoke_trigger
libcmt.lib(exe_winmain.obj) : error LNK2001: unresolved external symbol 
__telemetry_main_return_trigger
libcmt.lib(exe_winmain.obj) : error LNK2001: unresolved external symbol 
_configthreadlocale
libcmt.lib(exe_winmain.obj) : error LNK2001: unresolved external symbol 
_set_new_mode
libcmt.lib(exe_winmain.obj) : error LNK2001: unresolved external symbol 
__p__commode
libcmt.lib(utility_desktop.obj) : error LNK2001: unresolved external symbol 
terminate
libcmt.lib(utility_desktop.obj) : error LNK2001: unresolved external symbol 
memset
libcmt.lib(throw_bad_alloc.obj) : error LNK2001: unresolved external symbol 
__std_exception_copy
libcmt.lib(throw_bad_alloc.obj) : error LNK2001: unresolved external symbol 
__std_exception_destroy
libcmt.lib(throw_bad_alloc.obj) : error LNK2001: unresolved external symbol 
_CxxThrowException
libcmt.lib(tncleanup.obj) : error LNK2001: unresolved external symbol 
__std_type_info_destroy_list
gvim.exe : fatal error LNK1120: 153 unresolved externals
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 
14.0\VC\BIN\amd64\link.EXE"' : return code '0x460'


It seems that we have to change the Make_mvc.mak. I am not familiar with `/Zl 
/MT` `/MD` etc.

So, any suggestion?

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui