Ubuntu download source code clang + llvm+lldb compile + install

[This article may involve installing the following tools on Ubuntu:]  A、g + + B. gcc C. make D. cmake E. clang(10.0.1)(required)  F, llvm(10.0.1)(required) G, lldb(10.0.1)(optional) H. libcxx(10.0.1)(required) I. libcxx abi(10.0.1)(required) J. compiler-rt (optional) 【Tired】 I currently have two virtual machines: A. Ubuntu [ubuntu-20.04.1-desktop-amd64.iso], B. fedora [Fedora-Workstation-Live-x86_64-32-1.6.iso]. A can share files with the physical machine normally, […]

Painless VSCode+clangd+lldb+cmake configures C/C++ development environment

Foreword In C/C++ development, if you use vscode as the development platform, I believe everyone will install the C/C++ extension. When developing on a remote machine, the C/C++ extension provides automatic completion, etc. The function is always slow, which makes me feel very uncomfortable. After a while, I can’t stand it. clangd may be a […]

Dry explosion source code series Step by step lldb/gdb debugging multithreading

Step by step lldb/gdb debugging multithreading 0. Discussion 1. Breakpoint analysis 2. Multi-thread switching 2.1 Concurrent queue 2.1.1 Enqueue twice 2.2 Thread scheduling 2.2.1 Execute build terminal MetaPipeline 2.2.1.1 Thread6 schedules the first PipelineInitializeTask 2.2.1.2 Thread7 schedules the second PipelineInitializeTask 2.2.1.3 Thread8 scheduling build-side PipelineEvent 2.2.2 Execute the next Metapipeline From the previous book, we […]

Use LLDB to debug AOSP source code under Ubuntu

Connect to LLDB 1. Open the lldb service of the mobile phone through adb aw@m:~/Downloads$ adb root adbd is already running as root aw@m:~/Downloads$ adb remount remount succeeded aw@m:~/Downloads$ adb shell bonito:/ # cd data/local/tmp bonito:/data/local/tmp # ./lldb-server p –server –listen unix-abstract:///data/local/tmp/debug.sock 2. Connect to lldb-server aw@m:~/Downloads$ lldb Traceback (most recent call last): File “<string>”, […]

15. Virtual memory & LLDB advanced debugging

1. Virtual memory early operating system The early operating system did not have the concept of virtual memory. The system directly accesses the physical address in the memory by the process, which has serious security risks. Different processes in the memory can calculate their physical addresses and can be accessed across processes , the data […]