12.x build fails on Ubuntu 16 Aarch64

When attempting to build LLDB 12.0.1 on an older Arm Ubuntu 16, I got several errors like:

llvm/tools/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp:1140:42: error: ‘SVE_PT_FPSIMD_OFFSET’ was not declared in this scope

If I remember right, a previous build with 11.1 in the same build environment passed, so I suspect that a recent change added a dependency on this system header not present in Ubuntu 16.

I’m not familiar with LLDB internals, and I cannot estimate the real need for these definitions, but it would be great to have the build scripts detect the presence/absence of this system header and act accordingly.

This was an intentional change requiring a recent AArch64 compiler and sysroot containing ptrace.h with all SVE headers included. May be you can try Ubuntu test toolchain repository to fetch more recent compiler with sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test

Also we currently do LLDB testing on latest and latest - 1 LTS. So you may wanna update to either 18.04 or 20.04. LLVM release builds are also done against 18.04 at the moment.