[lldb-dev] Compiler requirements for compiling lldb?

Randy Smith rdsmith at chromium.org
Mon Jul 7 19:11:26 PDT 2014


Is there a goal of keeping lldb compatible with building with gcc?  I've
been building successfully with gcc 4.8.2, but compiling at r212507 just
broke with that gcc on a source line that was recently (today) changed.
 Full log below; key excerpts here:


/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/Interpreter/Args.cpp:693:115:
error: no matching function for call to
‘lldb_private::OptionValidator::IsValid(lldb_private::Platform&,
lldb_private::ExecutionContext)’

             if (validator &&
!validator->IsValid(*interpreter.GetPlatform(true),
interpreter.GetExecutionContext()))

/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/include/lldb/lldb-private-types.h:61:22:
note:   no known conversion for argument 2 from
‘lldb_private::ExecutionContext’ to ‘lldb_private::ExecutionContext&’


I'm happy to upgrade to compiling with clang if that's needed; I'm just
wanting to confirm policy and call out that the web page instructions may
need to be changed.

(If this is pilot error on my part, sincere apologies for the spam.  But at
the moment I don't see how it could be pilot error.)

-- Randy



FAILED: /usr/local/google/home/rdsmith/toolchains/bin/g++
-DGTEST_HAS_RTTI=0 -DHAVE_ROUND -D_DEBUG -D_GNU_SOURCE
-D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -fPIC
-fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter -Wwrite-strings
-Wno-missing-field-initializers -pedantic -Wno-lo\

ng-long -Wno-maybe-uninitialized -Wnon-virtual-dtor -Wno-comment -std=c++11
-ffunction-sections -fdata-sections -Wno-deprecated-declarations
-Wno-unknown-pragmas -Wno-deprecated-register  -fno-exceptions -fno-rtti
-fPIC -g -Itools/lldb/source/Interpreter
-I/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/s\

ource/Interpreter
-I/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/include
-Itools/lldb/include -Iinclude
-I/usr/local/google/home/rdsmith/Sandboxen/llvm/include
-I/usr/include/python2.7
-I/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/../clang/include
-Itools/lldb/../clang/include -I/usr/local\

/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/.
-I/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/Plugins/Process/Linux
-I/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/Plugins/Process/POSIX
  -fno-exceptions -fno-rtti -MMD -MT
tools/lldb/source/Interpreter/CMakeFiles/lldb\

Interpreter.dir/Args.cpp.o -MF
tools/lldb/source/Interpreter/CMakeFiles/lldbInterpreter.dir/Args.cpp.o.d
-o tools/lldb/source/Interpreter/CMakeFiles/lldbInterpreter.dir/Args.cpp.o
-c
/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/Interpreter/Args.cpp


/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/Interpreter/Args.cpp:
In member function ‘lldb_private::Error
lldb_private::Args::ParseOptions(lldb_private::Options&)’:



*/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/Interpreter/Args.cpp*
:693:115: error: no matching function for call to
‘lldb_private::OptionValidator::IsValid(lldb_private::Platform&,
lldb_private::ExecutionContext)’


             if (validator &&
!validator->IsValid(*interpreter.GetPlatform(true),
interpreter.GetExecutionContext()))





                                        ^




*/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/Interpreter/Args.cpp*
:693:115: note: candidate is:




In file included from
*/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/include/lldb/Interpreter/Args.h:22*
:0,



                 from
*/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/source/Interpreter/Args.cpp*
:17:



*/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/include/lldb/lldb-private-types.h*
:61:22: note: virtual bool
lldb_private::OptionValidator::IsValid(lldb_private::Platform&,
lldb_private::ExecutionContext&) const


         virtual bool IsValid(Platform &platform, ExecutionContext &target)
const = 0;




                      ^





*/usr/local/google/home/rdsmith/Sandboxen/llvm/tools/lldb/include/lldb/lldb-private-types.h*
:61:22: note:   no known conversion for argument 2 from
‘lldb_private::ExecutionContext’ to ‘lldb_private::ExecutionContext&’
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20140707/c5d0dc8c/attachment.html>


More information about the lldb-dev mailing list