[lldb-dev] build fails on linux

Greg Clayton gclayton at apple.com
Mon Sep 26 16:51:43 PDT 2011


You might need to add any missing pure virtual functions that are in Process.h into the ProcessLinux.h/cpp, even if they just return errors or zero values.

On Sep 26, 2011, at 4:32 PM, dawn at burble.org wrote:

> Thank you!  That got me a little further.  Now I get:
> 
> make[3]: Entering directory
> `/home/dawn/dev/llvm_svn/tools/lldb/source/Plugins/Process/Linux'
> llvm[3]: Compiling ProcessLinux.cpp for Debug+Asserts build
> ProcessLinux.cpp: In static member function 'static
> lldb_private::Process*
> ProcessLinux::CreateInstance(lldb_private::Target&,
> 	lldb_private::Listener&)':
> ProcessLinux.cpp:36:45: error: cannot allocate an object of abstract
> type 'ProcessLinux'
> ProcessLinux.h:27:1: note:   because the following virtual functions are
> pure within 'ProcessLinux':
> /home/dawn/dev/llvm_svn/tools/lldb/source/Plugins/Process/Linux/../../../../include/lldb/Target/Process.h:2492:5:
> note:    virtual uint32_t
> lldb_private::Process::UpdateThreadList(lldb_private::ThreadList&,
> 	lldb_private::ThreadList&)
> ProcessLinux.cpp: In member function 'virtual lldb::addr_t
> ProcessLinux::DoAllocateMemory(size_t, uint32_t, lldb_private::Error&)':
> ProcessLinux.cpp:375:145: warning: ISO C++ does not support the 'z'
> gnu_printf length modifier
> ProcessLinux.cpp: In static member function 'static
> lldb_private::Process*
> ProcessLinux::CreateInstance(lldb_private::Target&,
> 	lldb_private::Listener&)':
> ProcessLinux.cpp:37:1: warning: control reaches end of non-void function
> /bin/rm: cannot remove
> `/home/dawn/dev/llvm_svn/tools/lldb/source/Plugins/Process/Linux/Debug+Asserts/ProcessLinux.d.tmp':
> No such file or directory
> make[3]: ***
> [/home/dawn/dev/llvm_svn/tools/lldb/source/Plugins/Process/Linux/Debug+Asserts/ProcessLinux.o]
> Error 1
> 
> 
> I tried to fix it by copying the UpdateThreadList function from
> MacOSX-Kernel/ProcessKDP.cpp (and fixing the identifiers), but that 
> just led me into a different set of errors.
> 
> Thanks in advance,
>    -Dawn
> 
> 
> On Mon, Sep 26, 2011 at 04:04:55PM -0700, Sean Callanan wrote:
>> Dawn,
>> 
>> I just committed r140577, which should resolve your problem.
>> 
>> Sean
>> 
>> On Sep 26, 2011, at 3:46 PM, dawn at burble.org wrote:
>> 
>>> 
>>> I have lldb rev 140572.
>>> 
>>> I followed the instructions here: http://lldb.llvm.org/build.html
>>> 
>>> and updated my llvm and clang trees to the documented revision:
>>>   $grep -m 1 llvm_revision $lldb/scripts/build-llvm.pl 
>>>   our $llvm_revision = "137311";
>>> 
>>> When I build, I get:
>>> [...]
>>> llvm[2]: Compiling ClangUserExpression.cpp for Debug+Asserts build
>>> In file included from ClangUserExpression.cpp:31:0:
>>> /home/dawn/dev/llvm_svn/tools/lldb/source/Expression/../../include/lldb/Expression/ExpressionSourceCode.h:13:31:
>>> fatal error: lldb-enumerations.h: No such file or directory
>>> compilation terminated.
>>> [...]
>>> 
>>> Please help,
>>> Thanks,
>>> -Dawn
>>> 
>>> _______________________________________________
>>> lldb-dev mailing list
>>> lldb-dev at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev




More information about the lldb-dev mailing list