[libcxx] r294553 - [libcxx][CMake] Support in-tree libunwind when building as part of runtimes

Leslie Zhai via cfe-commits cfe-commits at lists.llvm.org
Mon Jan 21 19:51:26 PST 2019


在 2019/1/21 下午5:36, Leslie Zhai 写道:
> Hi Asiri,
>
> Did you fix the issue when building libcxx and libcxxabi use LLVM's 
> libunwind?

Fixed :)

Just put libcxx, libcxxabi, libunwind and compiler-rt under `runtimes` 
directory.

Leslie Zhai


>
> http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20170206/184841.html 
>
>
> I experienced the similar issue:
>
> CMake Error at projects/libcxxabi/src/CMakeLists.txt:163 
> (target_link_libraries):
>   Target "unwind" of type UTILITY may not be linked into another 
> target.  One
>   may link only to INTERFACE, OBJECT, STATIC or SHARED libraries, or to
>   executables with the ENABLE_EXPORTS property set.
>
>
> CMake Error at projects/libcxxabi/src/CMakeLists.txt:197 
> (target_link_libraries):
>   Target "unwind" of type UTILITY may not be linked into another 
> target.  One
>   may link only to INTERFACE, OBJECT, STATIC or SHARED libraries, or to
>   executables with the ENABLE_EXPORTS property set.
>
> ...
>
> CMake Error at projects/libcxx/lib/CMakeLists.txt:244 
> (target_link_libraries):
>   Target "unwind" of type UTILITY may not be linked into another 
> target.  One
>   may link only to INTERFACE, OBJECT, STATIC or SHARED libraries, or to
>   executables with the ENABLE_EXPORTS property set.
>
>
> CMake Error at projects/libcxx/lib/CMakeLists.txt:268 
> (target_link_libraries):
>   Target "unwind" of type UTILITY may not be linked into another 
> target.  One
>   may link only to INTERFACE, OBJECT, STATIC or SHARED libraries, or to
>   executables with the ENABLE_EXPORTS property set.
>
> ----- 8< -------- 8< -------- 8< -------- 8< -------- 8< -------- 8< ---
>
> My cmake option:
>
> $ cmake .. -DCMAKE_INSTALL_PREFIX=/opt/loong-llvm \
>     -DCMAKE_BUILD_TYPE=Release \
>     -DLLVM_ENABLE_ASSERTIONS=ON \
>     -DCMAKE_C_COMPILER=/opt/loong-llvm/bin/clang \
>     -DCMAKE_CXX_COMPILER=/opt/loong-llvm/bin/clang++ \
>     -DCMAKE_C_FLAGS="-fPIC" \
>     -DCMAKE_CXX_FLAGS="-std=c++11 -fPIC" \
>     -DLLVM_BUILD_LLVM_DYLIB=ON \
>     -DLLVM_LINK_LLVM_DYLIB=ON \
>     -DLLVM_INSTALL_UTILS=ON \
>     -DLLVM_ENABLE_RTTI=ON \
>     -DLLVM_ENABLE_FFI=ON \
>     -DLLVM_ENABLE_EH=ON \
>     -DLLVM_BUILD_TESTS=OFF \
>     -DLLVM_BUILD_DOCS=OFF \
>     -DLLVM_ENABLE_SPHINX=OFF \
>     -DLLVM_ENABLE_DOXYGEN=OFF \
>     -DLLDB_DISABLE_LIBEDIT=1 \
>     -DSPHINX_WARNINGS_AS_ERRORS=OFF \
>     -DFFI_INCLUDE_DIR=$(pkg-config --variable=includedir libffi) \
>     -DFFI_LIBRARY_DIR:PATH="$(pkg-config --variable=libdir libffi)" \
>     -DLLVM_BINUTILS_INCDIR=/usr/include \
>     -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=ON \
>     -DLIBUNWIND_ENABLE_SHARED=OFF \
>     -DLIBCXXABI_USE_LLVM_UNWINDER=ON \
>     -DLLVM_DEFAULT_TARGET_TRIPLE="mips64el-redhat-linux" \
>     -DCLANG_VENDOR="Loongson"
>
> Regards,
>
> Leslie Zhai
>



More information about the cfe-commits mailing list