ぺんぎんさんのおうち

日記です。たまに日記じゃないこともあります。

06.07.2022

LLVMRISC-Vの本。

 

ヴァージョンは13。

$ git clone https://github.com/msyksphinz-self/llvm-project.git -b llvm-myriscvx130

cmakeとNinjaを使ってビルドする。

/tmp/llvm-project/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp:157:3: error: duplicate case value
   case VK_RISCV_32_PCREL:
   ^~~~
/tmp/llvm-project/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp:137:3: note: previously used here
   case VK_RISCV_32_PCREL:

落ちる。

 

github.com

caseが重複。本家のLLVMリポジトリを見に行く。

github.com

誤字脱字には気をつけよう。

これでビルドできるかと思ったら、リンクに失敗したとかで落ちる。

llvm won't link · GitHub

最終的には

$ cmake -G Ninja \
        -DDEFAULT_SYSROOT=${HOME}/riscv64_github/riscv64-unknown-elf \
        -DCMAKE_BUILD_TYPE="Release" \
        -DLLVM_USE_LINKER=gold \
        -DLLVM_TARGETS_TO_BUILD="X86;AArch64;RISCV;MYRISCVX" \
        -DLLVM_ENABLE_PROJECTS="clang;libcxx;libcxxabi" \
      ../llvm

$ ninja

これでビルド通った。git難しいね。