Comments inlined below.
> On Jun 8, 2018, at 2:52 AM, Bewoayia Kebianyor via lldb-dev > <lldb-dev@lists.llvm.org> wrote: > > Hello Everyone, > > I started looking into the LLDB with the intention of adding custom commands > for my SW debugging purpose. For a better Understanding let me explain what I > intend to do. I have an source file generated automatically from a Model with > certain anotations added as comments in the code. This code will would be > compiled and in error cases debugged. When debugging I may have to set > breakpoints at certain statements in the code based on the anotations > incerted by the code generator. This is done by specifying the source file > and the line number. I Use CLANG to get the line number and source file for > the comments. Did you know we have the ability to set breakpoints using source regular expression? (lldb) breakpoint set --source-pattern-regexp "// breakpoint [0-9]+" --file /path/to/foo.cpp This will use a regular expression to search the source file for the regular expression you specify and have one breakpoint that has multiple locations. > I would like to have custom commands for this and internally map the to > already existing commands e.g. "breakpoint set -f -l". I found some examples > for python, and for c++ I only found the example > "lldb/examples/plugins/commands/fooplugin.cpp" for writing C++ plugin > (dynLib) shipped with the LLDB source. In this example adding a new commands > was straight forward and in the DoExecute function, I call the interpreter to > handle a breakpoint command. I intend to use C++ rather than Python. Do you even need this custom command given what I said above? > > This works fine for a simple shared lib (Simple modification of the Example > provided in LLDB. In Do execute call interpreter to handle a breakpoint > command). However if I add other C++ sources which does XML parsing, CLANG > RecursiveASTVisitor etc to the Library, creating the shared library with > eclipse is sucessful. I can link the created library to an application and it > works well. However when I load this in lldb with the command ==> plugin load > > "/home/bkebianyor/eclipse-workspace/Model_LLDB_Debugger/Debug/libModel_LLDB_Debugger.so", > I get the error message: "error: this file does not represent a loadable > dylib". > > > #Loading the shared lib that is linked just to the liblldb.so - SUCESSFUL > (lldb) > (lldb) plugin load > /home/bkebianyor/eclipse-workspace/DynLib/Debug/libDynLib.so > (lldb) > > #Loading the shared lib that is linked just to the liblldb.so + > libxerces-c-3.2.so - FAILS > > (lldb) plugin load > "/home/bkebianyor/eclipse-workspace/Model_LLDB_Debugger/Debug/libModel_LLDB_Debugger.so" > error: this file does not represent a loadable dylib > > I have searched for this error on google, but could not find out how to > resolve this error. Most answers pointed to a mismatch of the lldb version in > the shared lib to be loaded and that linked to lldb, but that is not my case. > I am using lldb-5.0.2 and LLVM/CLANG 5.0.2 toolcahin on Linux 16.04.1-Ubuntu > and Eclipse IDE. LLVM was built with SHARED_LIBS set to ON. I am guessing that maybe your libModel_LLDB_Debugger.so shared library can't find all the dependencies it requires when being loaded. Try making a small a.out file that links against this library and try to run your a.out program. See if you see any errors when the a.out tries to launch. Greg > > Would be grateful for an answer. > > > Thanks and Regards, > > Bewoayia > > ------------- > Dipl.- Ing. Bewoayia Kebianyor > Researcher - Hardware/Software Design Methodology Group > > OFFIS e.V. - Institut für Informatik > FuE Bereich Verkehr | R&D Division Transportation > Escherweg 2 - 26121 Oldenburg - Germany > Phone/Fax.: +49 441 9722 237/-278 > E-Mail: bewoayia.kebian...@offis.de > URL: http://www.offis.de <http://www.offis.de/> > > Registergericht: Amtsgericht Oldenburg VR 1956 > Vorstand: Prof. Dr.-Ing. Wolfgang H. Nebel (Vorsitzender), Prof. Dr. techn. > Susanne Boll-Westermann, Prof. Dr. Werner Damm, Prof. Dr.-Ing. Axel Hahn, > Prof. Dr.-Ing. Andreas Hein, Prof. Dr. Sebastian Lehnhoff > _______________________________________________ > lldb-dev mailing list > lldb-dev@lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
_______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev