On Wed, Jun 23, 2010 at 9:48 AM, Greg Clayton <[email protected]> wrote: > > On Jun 22, 2010, at 7:01 PM, Eli Friedman wrote: > >> With a few hacks and some Makefiles, I have lldb running on Linux >> (I'll contribute them once I have a couple more things taken care of). > > Great! > >> However, when I try using it, I get the following not-so-useful >> results on the attached ELF-32 file: >> >> e...@eli-laptop:~/llvmgbuild/tools/lldb$ ~/llvmgbuild/Release/bin/lldb >> (lldb) file /tmp/a >> Current executable set to '/tmp/a' (x86_64). > > This has to do with the default architecture that is currently being set. We > will need to set the following macros correctly for linux: > > LLDB_ARCH_DEFAULT > LLDB_ARCH_DEFAULT_32BIT > LLDB_ARCH_DEFAULT_64BIT > > These don't make as much sense in linux as they do on Mac OS X. In Mac OS X > we can run either 32 or 64 bit versions of apps on the same OS install if it > is 64 bit capable (85% of our Intel machines are 64 bit capable). > > So we probably want to set the LLDB_ARCH_DEFAULT defines correctly for the > current linux host OS with #ifdefs. This will then mean that you won't have > to set the architecture unless you are doing cross debugging.
This doesn't seem like the kind of thing to handle with #ifdefs, shouldn't lldb be able to infer the architecture from the binary it is debugging? - Daniel > >> (lldb) disassemble -n main > >> (lldb) quit >> Segmentation fault >> >> The segfault is probably an issue in my own code, but I'm sort of >> suprised the attempted disassembly leads to no output. Any ideas? > > > We do currently have two ReadMemory calls: > > Target::ReadMemory(...) > Process::ReadMemory(...) > > The Target version should be able to read memory from constant sections in > executable files when we aren't running, I just need to hook it up (read the > section contents from the file instead of from live memory). It shouldn't > take long, I will try and get to this today as this feature is quite useful. > > The rules are simple for ReadMemory: > - use the target if you know your memory might come from a constant section, > or you would like us to try and read from the constant sections to avoid a > ton of packets going to/from your Process plug-in. > - use the Process version if you want to read from the inferior process and > skip the constant section caches. > > > > > _______________________________________________ > lldb-dev mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev > _______________________________________________ lldb-dev mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
