Skip to content

[Info, not a issue] cmake settings for gcc version above v12 #52

Open
@cjacker

Description

@cjacker
  1. Due to -march changes of gcc version above v12, to use gcc version above v12, RV_ARCH in cmake/application.cmake of hpm_sdk should be changed from -march=rv32imac to -march=rv32imac_zicsr_zifencei.

open cmake/application.cmake and find:

if(NOT RV_ARCH)
    set(RV_ARCH "rv32imac_zicsr_zifencei")
endif()

Change set(RV_ARCH "rv32imac") to set(RV_ARCH "rv32imac_zicsr_zifencei").

  1. For users which use some prebuilt toolchains, such as xpack riscv toolchain, also need to set the gcc triplet in cmake/toolchain.cmake file to help SDK find the correct toolchain.

open cmake/toolchain.cmake and find:

elseif("${TOOLCHAIN_VARIANT}" STREQUAL "gcc")
  set(COMPILER gcc)
  set(LINKER ld)
  set(BINTOOLS gnu)
  set(C++ g++)
  set(CROSS_COMPILE_TARGET riscv32-unknown-elf)
  set(SYSROOT_TARGET       riscv32-unknown-elf)
  set(TOOLCHAIN_CMAKE gcc.cmake)

And change riscv32-unknown-elf to your toolchain's triplet, for example, for xpack riscv toolchain, it's riscv-none-elf.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions