llvm windows biên dịch thành công

Một, sở cần công cụ

  1. Visual Studio

    • Đề cử phiên bản: Visual Studio 2022. Mặt khác phiên bản cũng nhưng duy trì.
  2. CMake

  3. Ninja

  4. LLVM

Nhị, phối trí cùng biên dịch bước đi

  1. Lấy quản lý viên thân phận mở ra mệnh lệnh hành đầu cuối, đưa vào dưới mệnh lệnh tới thiết trí chấp hành sách lược:

    Set-ExecutionPolicy Unrestricted
    

    Ấn nhắc nhở đưa vàoYLấy xác nhận.

  2. Tiến vào hạng mục mục lục cũng sáng tạo xây dựng mục lục:

    cdD:\llvm-project-main\llvm-project-llvmorg-18.1.8\
    mkdirbuild
    cdbuild
    
  3. Sử dụng CMake sinh thành xây dựng văn kiện cũng bắt đầu biên dịch:

    cmake-G"Ninja"-DCMAKE_BUILD_TYPE=Release\
    -DLLVM_ENABLE_PROJECTS="clang;libcxx;libcxxabi;clang-tools-extra;libunwind;compiler-rt"\
    -DLLVM_ENABLE_ASSERTIONS=ON-DCMAKE_CXX_FLAGS="/utf-8"..\llvm\
    

Tam, thường thấy sai lầm cập giải quyết phương án

Nếu ở chấp hành kể trên mệnh lệnh khi xuất hiện dưới sai lầm:

CMake Error at CMakeLists.txt:139 (MESSAGE):
libcxxisn’t a known project:
bolt;clang;clang-tools-extra;compiler-rt;cross-project-tests;libc;libclc;lld;lldb;mlir;openmp;polly;pstl;flang.
Did you mean to enable it as a runtime inLLVM_ENABLE_RUNTIMES?

Này sai lầm cho thấylibcxxBị CMake phân biệt vì không biết hạng mục, có thể là bởi vì LLVM phiên bản biến hóa hoặc CMake lựa chọn thiết trí không lo, yêu cầu thiết tríDLLVM_ENABLE_RUNTIMES= “libcxx;libcxxabi;libunwind;compiler-rt”.

Giải quyết phương án:
  1. Sử dụng chính xác CMake lựa chọn:
    Nếu muốn xây dựng LLVM hạng mục, cần sử dụngLLVM_ENABLE_RUNTIMESLựa chọn tới bắt đầu dùnglibcxxCùnglibcxxabi,Mà phiLLVM_ENABLE_PROJECTS.Sửa chữa sau mệnh lệnh như sau:

    cmake-G"Ninja"-DCMAKE_BUILD_TYPE=Release\
    -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi;libunwind;compiler-rt"\
    -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra"\
    -DLLVM_ENABLE_ASSERTIONS=ON-DCMAKE_CXX_FLAGS="/utf-8"..\llvm\
    
  2. Kiểm tra LLVM phiên bản cùng CMake kiêm dung tính:

    • Bảo đảm CMake phiên bản cùng LLVM phiên bản kiêm dung. Nếu CMake phiên bản quá cũ, khả năng sẽ kích phát một ít CMake policy ( như CMP0114 cùng CMP0116 ) cảnh cáo hoặc sai lầm.
    • Có thể nếm thử thăng cấp đến mới nhất phiên bản CMake, cũng tham khảo LLVM hồ sơ bảo đảm sử dụng chính xác xây dựng lựa chọn.
  3. Chữa trị CMake policy cảnh cáo:

    • CMake khả năng nhắc nhở nào đó sách lược đã qua khi, tương lai phiên bản đem di trừ cũ hành vi. ỞCMakeLists.txtTrung tay động thiết trí này đó sách lược vìNEW,Hoặc bảo đảm số hiệu đã thích xứng tân hành vi.

    Tỷ như, nhưng ởCMakeLists.txtMở đầu gia nhập:

    cmake_policy(SET CMP0114 NEW)
    cmake_policy(SET CMP0116 NEW)
    

在这里插入图片描述

Thông qua kể trên điều chỉnh, hẳn là có thể giải quyết phối trí sai lầm, thuận lợi hoàn thành xây dựng.
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/cea3b1058a0145c391763e9e9feca1e9.pn

Bình luận
Tăng thêm bao lì xì

Thỉnh điền bao lì xì chúc phúc ngữ hoặc tiêu đề

Cái

Bao lì xì cái số nhỏ nhất vì 10 cái

Nguyên

Bao lì xì kim ngạch thấp nhất 5 nguyên

Trước mặt ngạch trống3.43Nguyên Đi trước nạp phí >
Cần chi trả:10.00Nguyên
Thành tựu một trăm triệu kỹ thuật người!
Lĩnh sau ngươi sẽ tự động trở thành bác chủ cùng bao lì xì chủ fans Quy tắc
hope_wisdom
Phát ra bao lì xì
Thật phóNguyên
Sử dụng ngạch trống chi trả
Điểm đánh một lần nữa thu hoạch
Quét mã chi trả
Tiền bao ngạch trống 0

Để khấu thuyết minh:

1. Ngạch trống là tiền bao nạp phí giả thuyết tiền, dựa theo 1:1 tỉ lệ tiến hành chi trả kim ngạch để khấu.
2. Ngạch trống vô pháp trực tiếp mua sắm download, có thể mua sắm VIP, trả phí chuyên mục cập chương trình học.

Ngạch trống nạp phí