У меня есть сервер сборки Jenkins под управлением macOS 10.12.
Я компилирую приложение C ++, используя последнюю версию Clang 10 (не AppleClang) с CMake 3.17.
Я получаю ошибку:
The C++ compiler
"/Users/XXX/llvm/bin/clang++"
is not able to compile a simple test program.
It fails with the following output:
ld: unknown option: -platform_version
clang-10: error: linker failed with exit code 1
Это отлично работает с Clang 9 на том же сервере, а Clang 10 отлично работает на macOS 10.15 со всеми остальными инструментами сборки и исходными файлами одинаково (Jenkins запускает чистую сборку каждый раз). Кажется, это комбинация Clang 10 и macOS 10.12. Что-нибудь изменилось между Clang 9 и Clang 10, что могло бы вызвать это?
Я вызываю CMake так:
cmake -DCMAKE_OSX_SYSROOT="${macos_sdk}" \
-DCMAKE_C_COMPILER="${llvm_bin}/clang" \
-DCMAKE_CXX_COMPILER="${llvm_bin}/clang++" \
-DCMAKE_OSX_ARCHITECTURES=${architectures} \
-DCMAKE_BUILD_TYPE=${make_build_type} ..