Vcpkg: [llvm-10.0.0] build failure

Created on 8 Aug 2020  路  5Comments  路  Source: microsoft/vcpkg

Host Environment

  • OS: Windows 10 Home
  • Compiler: Visual Studio Community 2019 - 16.7.0

To Reproduce
Steps to reproduce the behavior:
.\vcpkg.exe install llvm:x64-windows

Failure logs

PS C:\Users\etheory\Dropbox\Programming\vcpkg> .\vcpkg.exe install llvm:x64-windows                                                                                                                                               Your feedback is important to improve Vcpkg! Please take 3 minutes to complete our survey by running: vcpkg contact --survey
Computing installation plan...
The following packages will be built and installed:
    llvm[clang,core,disable-abi-breaking-checks,disable-assertions,disable-clang-static-analyzer,enable-rtti,lld,tools]:x64-windows
Detecting compiler hash for triplet x64-windows...
Starting package 1/1: llvm:x64-windows
Building package llvm[clang,core,disable-abi-breaking-checks,disable-assertions,disable-clang-static-analyzer,enable-rtti,lld,tools]:x64-windows...
Could not locate cached archive: C:\Users\etheory\AppData\Local\vcpkg\archives\a6\a657ade67effc9d81fe05946bcadd0cfba452678.zip
-- Note: llvm only supports static library linkage. Building static library.
-- Using cached C:/Users/etheory/Dropbox/Programming/vcpkg/downloads/llvm-llvm-project-llvmorg-10.0.0.tar.gz
-- Cleaning sources at C:/Users/etheory/Dropbox/Programming/vcpkg/buildtrees/llvm/src/org-10.0.0-32c002c70c.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source C:/Users/etheory/Dropbox/Programming/vcpkg/downloads/llvm-llvm-project-llvmorg-10.0.0.tar.gz
-- Applying patch 0001-allow-to-use-commas.patch
-- Applying patch 0002-fix-install-paths.patch
-- Applying patch 0003-fix-vs2019-v16.6.patch
-- Using source at C:/Users/etheory/Dropbox/Programming/vcpkg/buildtrees/llvm/src/org-10.0.0-32c002c70c.clean
-- Configuring x64-windows
-- Building x64-windows-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:139 (message):
    Command failed: C:/Users/etheory/Dropbox/Programming/vcpkg/downloads/tools/cmake-3.17.2-windows/cmake-3.17.2-win32-x86/bin/cmake.exe --build . --config Debug --target install -- -v
    Working Directory: C:/Users/etheory/Dropbox/Programming/vcpkg/buildtrees/llvm/x64-windows-dbg
    See logs for more information:
      C:\Users\etheory\Dropbox\Programming\vcpkg\buildtrees\llvm\install-x64-windows-dbg-out.log

Call Stack (most recent call first):
  scripts/cmake/vcpkg_build_cmake.cmake:91 (vcpkg_execute_build_process)
  scripts/cmake/vcpkg_install_cmake.cmake:24 (vcpkg_build_cmake)
  ports/llvm/portfile.cmake:197 (vcpkg_install_cmake)
  scripts/ports.cmake:79 (include)


Error: Building package llvm:x64-windows failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with `.\vcpkg update`, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
  Package: llvm:x64-windows
  Vcpkg version: 2020.06.15-nohash

Additionally, attach any relevant sections from the log files above.

Additional context
Unsure how to solve this myself, but I've attached the following output for investigation:
install-x64-windows-dbg-out.log

port-bug

Most helpful comment

All 5 comments

I believe I am seeing the same thing (I recently updated to VS 16.7.0). The culprit seems to be the following when compiling RTDyldMemoryManager.cpp:
type_traits.h(181): error C2338: inconsistent behavior between llvm:: and std:: implementation of is_trivially_copyable

[1296/2867] C:\PROGRA~2\MICROS~3\2019\COMMUN~1\VC\Tools\MSVC\1427~1.291\bin\Hostx64\x64\cl.exe   /TP -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib\ExecutionEngine\RuntimeDyld -IE:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\lib\ExecutionEngine\RuntimeDyld -Iinclude -IE:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\include /nologo /DWIN32 /D_WINDOWS /utf-8   /MP  /Zc:inline /Zc:strictStrings /Oi /Zc:rvalueCast /W4 -wd4141 -wd4146 -wd4244 -wd4267 -wd4291 -wd4345 -wd4351 -wd4456 -wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4100 -wd4127 -wd4512 -wd4505 -wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 -wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4709 -wd4324 -w14062 -we4238 /D_DEBUG /MTd /Z7 /Ob0 /Od /RTC1    /EHs-c- /GR -std:c++14 /showIncludes /Folib\ExecutionEngine\RuntimeDyld\CMakeFiles\LLVMRuntimeDyld.dir\RTDyldMemoryManager.cpp.obj /Fdlib\ExecutionEngine\RuntimeDyld\CMakeFiles\LLVMRuntimeDyld.dir\LLVMRuntimeDyld.pdb /FS -c E:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\lib\ExecutionEngine\RuntimeDyld\RTDyldMemoryManager.cpp
FAILED: lib/ExecutionEngine/RuntimeDyld/CMakeFiles/LLVMRuntimeDyld.dir/RTDyldMemoryManager.cpp.obj 
C:\PROGRA~2\MICROS~3\2019\COMMUN~1\VC\Tools\MSVC\1427~1.291\bin\Hostx64\x64\cl.exe   /TP -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_HAS_EXCEPTIONS=0 -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib\ExecutionEngine\RuntimeDyld -IE:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\lib\ExecutionEngine\RuntimeDyld -Iinclude -IE:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\include /nologo /DWIN32 /D_WINDOWS /utf-8   /MP  /Zc:inline /Zc:strictStrings /Oi /Zc:rvalueCast /W4 -wd4141 -wd4146 -wd4244 -wd4267 -wd4291 -wd4345 -wd4351 -wd4456 -wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4100 -wd4127 -wd4512 -wd4505 -wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 -wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4709 -wd4324 -w14062 -we4238 /D_DEBUG /MTd /Z7 /Ob0 /Od /RTC1    /EHs-c- /GR -std:c++14 /showIncludes /Folib\ExecutionEngine\RuntimeDyld\CMakeFiles\LLVMRuntimeDyld.dir\RTDyldMemoryManager.cpp.obj /Fdlib\ExecutionEngine\RuntimeDyld\CMakeFiles\LLVMRuntimeDyld.dir\LLVMRuntimeDyld.pdb /FS -c E:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\lib\ExecutionEngine\RuntimeDyld\RTDyldMemoryManager.cpp
E:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\include\llvm/Support/type_traits.h(181): error C2338: inconsistent behavior between llvm:: and std:: implementation of is_trivially_copyable
E:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\include\llvm/ADT/SmallVector.h(315): note: see reference to class template instantiation 'llvm::is_trivially_copyable<T>' being compiled
        with
        [
            T=std::pair<void *,size_t>
        ]
E:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\include\llvm/ADT/SmallVector.h(837): note: see reference to class template instantiation 'llvm::SmallVectorImpl<T>' being compiled
        with
        [
            T=std::pair<void *,size_t>
        ]
E:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\include\llvm/Support/Allocator.h(378): note: see reference to class template instantiation 'llvm::SmallVector<std::pair<void *,size_t>,0>' being compiled
E:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\include\llvm/Support/Allocator.h(435): note: see reference to class template instantiation 'llvm::BumpPtrAllocatorImpl<AllocatorT,SlabSize,SizeThreshold>' being compiled
E:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\include\llvm/ADT/SmallVector.h(315): error C2976: 'llvm::SmallVectorTemplateBase': too few template arguments
E:\External\vcpkg\buildtrees\llvm\src\org-10.0.0-32c002c70c.clean\llvm\include\llvm/ADT/SmallVector.h(179): note: see declaration of 'llvm::SmallVectorTemplateBase'

I am seeing this issue as well.

This issue has been fixed already in the PR #12884.

Thanks for posting this issue. This issue has been fixed. So I am closing this issue for now.

Was this page helpful?
0 / 5 - 0 ratings