[Openmp-commits] [clang] [compiler-rt] [libcxx] [libunwind] [llvm] [openmp] [cmake] switch to CMake's native `check_{compiler, linker}_flag` (PR #96171)
Ryan Prichard via Openmp-commits
openmp-commits at lists.llvm.org
Fri Jul 19 01:03:13 PDT 2024
rprichard wrote:
Sorry, I didn't notice the ping until just now.
The CMake feature testing seems broken, on Android at least. Here's a representative error from `build/android-ndk-21-def-x86/CMakeFiles/CMakeError.log`:
```
Performing C++ SOURCE FILE Test CXX_SUPPORTS_NOSTDLIBXX_FLAG failed with the following output:
Change Dir: /llvm/build/android-ndk-21-def-x86/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/local/bin/ninja cmTC_80129 && [1/2] Building CXX object CMakeFiles/cmTC_80129.dir/src.cxx.o
[2/2] Linking CXX executable cmTC_80129
FAILED: cmTC_80129
: && /opt/android/clang/clang-current/bin/clang++ --target=i686-linux-android21 --sysroot=/opt/android/ndk/sysroot --start-no-unused-arguments --unwindlib=none --end-no-unused-arguments CMakeFiles/cmTC_80129.dir/src.cxx.o -o cmTC_80129 && :
ld.lld: error: unable to find library -lc++
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
Source file was:
int main() { return 0; }
```
It's trying to see if `-nostdlib++` is supported, but I don't see that flag being passed in the `clang++` command line that CMake uses. In any case, CMake tries to build a C++ program, which fails because libc++ doesn't exist yet.
It seems that the Android support in the Dockerfile is broken after a refactor last year. I have some changes that get it working again. BuildKite is still successfully running Android tests as of today, so I think it's using an old image.
https://github.com/llvm/llvm-project/pull/96171
More information about the Openmp-commits
mailing list