[lldb-dev] Cross-building lldb

Vadim Chugunov via lldb-dev lldb-dev at lists.llvm.org
Mon Sep 16 16:20:45 PDT 2019


Hi,
I'm trying (and failing) to cross-build lldb according to these instructions
<https://lldb.llvm.org/resources/build.html#example-1-cross-compiling-for-linux-arm64-on-ubuntu-host>.


My cmake command line:

cd /workspace/build/lldb && /usr/bin/cmake -DLLVM_VERSION_SUFFIX=-custom
-DLLVM_PARALLEL_LINK_JOBS=1 "-DLLVM_ENABLE_PROJECTS=clang;libcxx;lldb"
"-DLLVM_TARGETS_TO_BUILD=X86;AArch64;ARM" -DLLVM_ENABLE_TERMINFO=FALSE
-DLLVM_ENABLE_LIBXML2=FORCE_ON  -DLLDB_RELOCATABLE_PYTHON=TRUE
-DLLDB_DISABLE_CURSES=TRUE -DLLDB_DISABLE_LIBEDIT=TRUE
-DCMAKE_CXX_FLAGS="-static-libstdc++ -static-libgcc"
-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_SYSTEM_PROCESSOR=aarch64
-DCMAKE_C_COMPILER=aarch64-linux-gnu-gcc
-DCMAKE_CXX_COMPILER=aarch64-linux-gnu-g++ -DCMAKE_CROSSCOMPILING=TRUE
-DLLVM_TARGET_ARCH=aarch64
-DLLVM_TABLEGEN=/workspace/build/llvm-host/bin/llvm-tblgen
-DCLANG_TABLEGEN=/workspace/build/llvm-host/bin/clang-tblgen
-DPYTHON_EXECUTABLE=/usr/bin/python3 -GNinja /workspace/source/llvm

When I kick off a build, a few files get compiled, but then a nested build
configuration is invoked:

cd /workspace/build/lldb/NATIVE && /usr/bin/cmake -G Ninja
-DCMAKE_MAKE_PROGRAM="/usr/bin/ninja"
-DCMAKE_C_COMPILER=/usr/bin/aarch64-linux-gnu-gcc
-DCMAKE_CXX_COMPILER=/usr/bin/aarch64-linux-gnu-g++ /workspace/source/llvm
-DLLVM_TARGET_IS_CROSSCOMPILE_HOST=TRUE
-DLLVM_TARGETS_TO_BUILD="X86;AArch64;ARM"
-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=""
-DLLVM_DEFAULT_TARGET_TRIPLE="x86_64-unknown-linux-gnu"
-DLLVM_TARGET_ARCH="aarch64" -DLLVM_ENABLE_PROJECTS="clang;libcxx;lldb"
-DLLVM_EXTERNAL_PROJECTS="" -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN="OFF"
-DCMAKE_BUILD_TYPE=Release
-DLLVM_EXTERNAL_CLANG_SOURCE_DIR=/workspace/source/llvm/../clang

... which fails with this error:

CMake Error at
/usr/share/cmake-3.13/Modules/FindPackageHandleStandardArgs.cmake:137
(message):
  Could NOT find LibEdit (missing: libedit_LIBRARIES) (found version ".")
Call Stack (most recent call first):
  /usr/share/cmake-3.13/Modules/FindPackageHandleStandardArgs.cmake:378
(_FPHSA_FAILURE_MESSAGE)
  /workspace/source/lldb/cmake/modules/FindLibEdit.cmake:54
(find_package_handle_standard_args)
  /workspace/source/lldb/cmake/modules/LLDBConfig.cmake:104 (find_package)
  /workspace/source/lldb/CMakeLists.txt:21 (include)

As far as I can tell, this happens because LLDB_DISABLE_LIBEDIT is not
propagated to this nested build...  but maybe I am missing some cmake flag?
I'm building off of master, but the same thing happens with 9.0 release
branch.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20190916/800ff61d/attachment.html>


More information about the lldb-dev mailing list