[lldb-dev] LLDB build at windows

Zachary Turner via lldb-dev lldb-dev at lists.llvm.org
Mon Jan 11 10:48:43 PST 2016


Yea, unfortunately the way things work is that the person who is affected
by the problem and who needs it fixed is usually the one that needs to fix
it.  Right now we don't have any Windows people building inside Visual
Studio, so nobody has fixed that.  But you're welcome to submit a patch :)

FWIW, I actually generate CMake twice, into two separate folders.  I have
build/vs and build/ninja.  In the vs directory I generate using "Visual
Studio 14 2015" generator, and in ninja I generate using Ninja generator.
I build from the Ninja folder, and I use the vs folder just for opening a
solution, source browsing, and debugging (i.e. change the Debugger settings
to point the executable into the ninja folder).

This way you still do everything from vs, just not the compile step.

On Mon, Jan 11, 2016 at 9:16 AM Red Skotina <red.skotina at gmail.com> wrote:

> thanks. i build successefuly llvm and lldb with ninja and cl compiler.
>
> If i build VS solution without options on CMake then i have ever more
> errors around unittests in llvm.
>
> like that:
>
> "d:\code\llvm\build\LLVM.sln" (целевой объект по умолчанию) (1) ->
> "d:\code\llvm\build\unittests\ADT\ADTTests.vcxproj.metaproj" (целевой
> объект по
>  умолчанию) (749) ->
> "d:\code\llvm\build\unittests\ADT\ADTTests.vcxproj" (целевой объект по
> умолчани
> ю) (750) ->
> (Целевой объект ClCompile) ->
>   D:\code\llvm\llvm\include\llvm/ADT/PointerEmbeddedInt.h(33): error
> C2327: 'll
> vm::PointerEmbeddedInt<IntT,Bits>::Value': is not a type name, static, or
> enume
> rator (compiling source file
> D:\code\llvm\llvm\unittests\ADT\PointerEmbeddedInt
> Test.cpp) [d:\code\llvm\build\unittests\ADT\ADTTests.vcxproj]
>   D:\code\llvm\llvm\include\llvm/ADT/PointerEmbeddedInt.h(33): error
> C2065: 'Va
> lue': undeclared identifier (compiling source file
> D:\code\llvm\llvm\unittests\
> ADT\PointerEmbeddedIntTest.cpp)
> [d:\code\llvm\build\unittests\ADT\ADTTests.vcxp
> roj]
>   D:\code\llvm\llvm\include\llvm/ADT/PointerEmbeddedInt.h(33): error
> C2327: 'll
> vm::PointerEmbeddedInt<int,8>::Value': is not a type name, static, or
> enumerato
> r (compiling source file
> D:\code\llvm\llvm\unittests\ADT\PointerEmbeddedIntTest
> .cpp) [d:\code\llvm\build\unittests\ADT\ADTTests.vcxproj]
>   D:\code\llvm\llvm\include\llvm/ADT/PointerEmbeddedInt.h(34): error
> C2338: Can
> not embed more bits than we have in a pointer! (compiling source file
> D:\code\l
> lvm\llvm\unittests\ADT\PointerEmbeddedIntTest.cpp)
> [d:\code\llvm\build\unittest
> s\ADT\ADTTests.vcxproj]
>   D:\code\llvm\llvm\include\llvm/ADT/PointerEmbeddedInt.h(39): error
> C2327: 'll
> vm::PointerEmbeddedInt<int,8>::Value': is not a type name, static, or
> enumerato
> r (compiling source file
> D:\code\llvm\llvm\unittests\ADT\PointerEmbeddedIntTest
> .cpp) [d:\code\llvm\build\unittests\ADT\ADTTests.vcxproj]
>   D:\code\llvm\llvm\include\llvm/ADT/PointerEmbeddedInt.h(39): error
> C2065: 'Va
> lue': undeclared identifier (compiling source file
> D:\code\llvm\llvm\unittests\
> ADT\PointerEmbeddedIntTest.cpp)
> [d:\code\llvm\build\unittests\ADT\ADTTests.vcxp
> roj]
>
>
> 2016-01-11 0:56 GMT+03:00 Zachary Turner <zturner at google.com>:
>
>> I have never built with -DLLVM_INCLUDE_TESTS=OFF
>> -DCLANG_INCLUDE_EXAMPLES=OFF -DCLANG_INCLUDE_TESTS=OFF before, so that
>> could be related.  Can you try removing those options on CMake to see if
>> that fixes it?
>>
>> The other thing I do differently is I use ninja generator.  So I use -G
>> Ninja instead of -G "Visual Studio 14 2015".  Building from within Visual
>> Studio like you're doing is supposed to work, I just don't know if anyone
>> tests it.  My command line is usually:
>>
>> cmake -G Ninja  -DCMAKE_BUILD_TYPE=Release -DPYTHON_HOME=<absolute path
>> to python\x86 from dest variable> ..\llvm
>>
>> ninja
>>
>>
>> On Sun, Jan 10, 2016 at 4:02 AM Red Skotina <red.skotina at gmail.com>
>> wrote:
>>
>>> thanks.
>>> i still have 5 errors while linking
>>> "d:\code\llvm\build\LLVM.sln" (целевой объект по умолчанию) (1) ->
>>> "d:\code\llvm\build\tools\lldb\unittests\LLDBUnitTests.vcxproj.metaproj"
>>> (целев
>>> ой объект по умолчанию) (741) ->
>>>
>>> "d:\code\llvm\build\tools\lldb\unittests\Utility\UtilityTests.vcxproj.metaproj"
>>>  (целевой объект по умолчанию) (742) ->
>>> "d:\code\llvm\build\tools\lldb\unittests\Utility\UtilityTests.vcxproj"
>>> (целевой
>>>  объект по умолчанию) (743) ->
>>>   LINK : fatal error LNK1181: cannot open input file 'gtest.lib'
>>> [d:\code\llvm\
>>> build\tools\lldb\unittests\Utility\UtilityTests.vcxproj]
>>>
>>> my commands:
>>>
>>> cmake -G "Visual Studio 14 2015"  -DCMAKE_BUILD_TYPE=Release
>>> -DLLVM_INCLUDE_EXAMPLES=OFF -DLLVM_INCLUDE_TESTS=OFF
>>> -DCLANG_INCLUDE_EXAMPLES=OFF -DCLANG_INCLUDE_TESTS=OFF
>>> -DPYTHON_HOME=<absolute path to python\x86 from dest variable> ..\llvm
>>>
>>> msbuild LLVM.sln /p:Configuration=Release;Platform=Win32
>>>
>>> i look to llvm\tools\lldb\gtest and cant find any file. here is only
>>> empty directories.
>>> should i download something or should skip unittests ?
>>>
>>> 2016-01-10 6:28 GMT+03:00 Zachary Turner <zturner at google.com>:
>>>
>>>> Should look like this:
>>>>
>>>> llvm
>>>> |__ tools
>>>>      |__ clang
>>>>      |__ lld
>>>>      |__ lldb
>>>>
>>>> You will need clang because lldb needs to link against it, and you will
>>>> need lld because lldb on Windows doesn't (yet) understand PDB, so you have
>>>> to compile your programs with clang.exe -fuse-ld=lld
>>>>
>>>>
>>>>
>>>> On Sat, Jan 9, 2016 at 1:29 PM Red Skotina via lldb-dev <
>>>> lldb-dev at lists.llvm.org> wrote:
>>>>
>>>>> If i want compile as part of llvm then what is destination directory
>>>>> for lldb trunk sources ?
>>>>> I has placed this in llvm/projects/lldb and has  much errors while
>>>>> compiling lldb with MSVC 2015.
>>>>>
>>>>> "d:\code\llvm\build\LLVM.sln" (целевой объект по умолчанию) (1) ->
>>>>> "d:\code\llvm\build\ALL_BUILD.vcxproj.metaproj" (целевой объект по
>>>>> умолчанию) (
>>>>> 2) ->
>>>>> "d:\code\llvm\build\projects\lldb\finish_swig.vcxproj.metaproj"
>>>>> (целевой объект
>>>>>  по умолчанию) (482) ->
>>>>> "d:\code\llvm\build\projects\lldb\source\API\liblldb.vcxproj.metaproj"
>>>>> (целевой
>>>>>  объект по умолчанию) (483) ->
>>>>>
>>>>> "d:\code\llvm\build\projects\lldb\source\Plugins\Language\ObjC\lldbPluginObjCLa
>>>>> nguage.vcxproj.metaproj" (целевой объект по умолчанию) (570) ->
>>>>>
>>>>> "d:\code\llvm\build\projects\lldb\source\Plugins\Language\ObjC\lldbPluginObjCLa
>>>>> nguage.vcxproj" (целевой объект по умолчанию) (571) ->
>>>>>   D:\code\llvm\llvm\tools\clang\include\clang/AST/ASTFwd.h(22): fatal
>>>>> error C10
>>>>> 83: Cannot open include file: 'clang/AST/DeclNodes.inc': No such file
>>>>> or direct
>>>>> ory (compiling source file
>>>>> D:\code\llvm\llvm\projects\lldb\source\Plugins\Langu
>>>>> age\ObjC\Cocoa.cpp)
>>>>> [d:\code\llvm\build\projects\lldb\source\Plugins\Language\O
>>>>> bjC\lldbPluginObjCLanguage.vcxproj]
>>>>>   D:\code\llvm\llvm\tools\clang\include\clang/AST/ASTFwd.h(22): fatal
>>>>> error C10
>>>>> 83: Cannot open include file: 'clang/AST/DeclNodes.inc': No such file
>>>>> or direct
>>>>> ory (compiling source file
>>>>> D:\code\llvm\llvm\projects\lldb\source\Plugins\Langu
>>>>> age\ObjC\NSArray.cpp)
>>>>> [d:\code\llvm\build\projects\lldb\source\Plugins\Language
>>>>> \ObjC\lldbPluginObjCLanguage.vcxproj]
>>>>>   D:\code\llvm\llvm\tools\clang\include\clang/AST/ASTFwd.h(22): fatal
>>>>> error C10
>>>>> 83: Cannot open include file: 'clang/AST/DeclNodes.inc': No such file
>>>>> or direct
>>>>> ory (compiling source file
>>>>> D:\code\llvm\llvm\projects\lldb\source\Plugins\Langu
>>>>> age\ObjC\ObjCLanguage.cpp)
>>>>> [d:\code\llvm\build\projects\lldb\source\Plugins\Lan
>>>>> guage\ObjC\lldbPluginObjCLanguage.vcxproj]
>>>>>   D:\code\llvm\llvm\tools\clang\include\clang/AST/ASTFwd.h(22): fatal
>>>>> error C10
>>>>> 83: Cannot open include file: 'clang/AST/DeclNodes.inc': No such file
>>>>> or direct
>>>>> ory (compiling source file
>>>>> D:\code\llvm\llvm\projects\lldb\source\Plugins\Langu
>>>>> age\ObjC\CF.cpp)
>>>>> [d:\code\llvm\build\projects\lldb\source\Plugins\Language\ObjC
>>>>> \lldbPluginObjCLanguage.vcxproj]
>>>>>
>>>>> D:\code\llvm\llvm\tools\clang\include\clang/Basic/DiagnosticIDs.h(53): fatal
>>>>> error C1083: Cannot open include file:
>>>>> 'clang/Basic/DiagnosticCommonKinds.inc':
>>>>>  No such file or directory (compiling source file
>>>>> D:\code\llvm\llvm\projects\ll
>>>>> db\source\Plugins\Language\ObjC\NSDictionary.cpp)
>>>>> [d:\code\llvm\build\projects\
>>>>> lldb\source\Plugins\Language\ObjC\lldbPluginObjCLanguage.vcxproj]
>>>>>
>>>>> D:\code\llvm\llvm\tools\clang\include\clang/Basic/DiagnosticIDs.h(53): fatal
>>>>> error C1083: Cannot open include file:
>>>>> 'clang/Basic/DiagnosticCommonKinds.inc':
>>>>>  No such file or directory (compiling source file
>>>>> D:\code\llvm\llvm\projects\ll
>>>>> db\source\Plugins\Language\ObjC\NSError.cpp)
>>>>> [d:\code\llvm\build\projects\lldb\
>>>>> source\Plugins\Language\ObjC\lldbPluginObjCLanguage.vcxproj]
>>>>>
>>>>> D:\code\llvm\llvm\tools\clang\include\clang/Basic/DiagnosticIDs.h(53): fatal
>>>>> error C1083: Cannot open include file:
>>>>> 'clang/Basic/DiagnosticCommonKinds.inc':
>>>>>  No such file or directory (compiling source file
>>>>> D:\code\llvm\llvm\projects\ll
>>>>> db\source\Plugins\Language\ObjC\NSException.cpp)
>>>>> [d:\code\llvm\build\projects\l
>>>>> ldb\source\Plugins\Language\ObjC\lldbPluginObjCLanguage.vcxproj]
>>>>>   D:\code\llvm\llvm\tools\clang\include\clang/AST/ASTFwd.h(22): fatal
>>>>> error C10
>>>>> 83: Cannot open include file: 'clang/AST/DeclNodes.inc': No such file
>>>>> or direct
>>>>> ory (compiling source file
>>>>> D:\code\llvm\llvm\projects\lldb\source\Plugins\Langu
>>>>> age\ObjC\NSIndexPath.cpp)
>>>>> [d:\code\llvm\build\projects\lldb\source\Plugins\Lang
>>>>> uage\ObjC\lldbPluginObjCLanguage.vcxproj]
>>>>>   D:\code\llvm\llvm\tools\clang\include\clang/AST/ASTFwd.h(22): fatal
>>>>> error C10
>>>>> 83: Cannot open include file: 'clang/AST/DeclNodes.inc': No such file
>>>>> or direct
>>>>> ory (compiling source file
>>>>> D:\code\llvm\llvm\projects\lldb\source\Plugins\Langu
>>>>> age\ObjC\NSSet.cpp)
>>>>> [d:\code\llvm\build\projects\lldb\source\Plugins\Language\O
>>>>> bjC\lldbPluginObjCLanguage.vcxproj]
>>>>>   D:\code\llvm\llvm\tools\clang\include\clang/AST/ASTFwd.h(22): fatal
>>>>> error C10
>>>>> 83: Cannot open include file: 'clang/AST/DeclNodes.inc': No such file
>>>>> or direct
>>>>> ory (compiling source file
>>>>> D:\code\llvm\llvm\projects\lldb\source\Plugins\Langu
>>>>> age\ObjC\NSString.cpp)
>>>>> [d:\code\llvm\build\projects\lldb\source\Plugins\Languag
>>>>> e\ObjC\lldbPluginObjCLanguage.vcxproj]
>>>>>
>>>>> _______________________________________________
>>>>> lldb-dev mailing list
>>>>> lldb-dev at lists.llvm.org
>>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
>>>>>
>>>>
>>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20160111/efde7769/attachment-0001.html>


More information about the lldb-dev mailing list