小编S. *_*rti的帖子

如何将 CMake 设置为与嵌入在 Windows 上的 ARM 的 clang 交叉编译?

我正在尝试生成 Ninja 生成文件,以使用 Clang 为 ARM Cortex A5 CPU 交叉编译 C++ 项目。我为 CMake 创建了一个工具链文件,但似乎存在我无法找到的错误或缺失的内容。当使用下面的工具链文件调用 CMake 时,我收到以下错误。

CMake 命令:

cmake -DCMAKE_TOOLCHAIN_FILE="..\Src\Build\Toolchain-clang-arm.cmake" -GNinja ..\Src\

输出:

-- C 编译器标识是 Clang 7.0.0 CMake Error at C:/Users/user/scoop/apps/cmake/3.13.4/share/cmake-3.13/Modules/CMakeDetermineCompilerId.cmake:802 (message): The Clang编译工具

“C:/Program Files/LLVM/bin/clang.exe”

以 MSVC ABI 为目标,但具有类似 GNU 的命令行界面。这不受支持。改用'clang-cl',例如在环境中设置'CC=clang-cl'。此外,使用 MSVC 命令行环境。调用堆栈(最近调用):
C:/Users/user/scoop/apps/cmake/3.13.4/share/cmake-3.13/Modules/CMakeDetermineCCompiler.cmake:113 (CMAKE_DIAGNOSE_UNSUPPORTED_CLANG) CMakeLists.txt:2 (PROJECT)

-- 配置不完整,出现错误!

CMake 工具链文件(Toolchain-clang-arm.cmake):

set(CMAKE_CROSSCOMPILING TRUE)
SET(CMAKE_SYSTEM_NAME Generic)
set(CMAKE_SYSTEM_PROCESSOR arm)

# Clang target triple
SET(TARGET armv7-none-eabi)

# specify the cross compiler
SET(CMAKE_C_COMPILER_TARGET ${TARGET})
SET(CMAKE_C_COMPILER clang)
SET(CMAKE_CXX_COMPILER_TARGET ${TARGET})
SET(CMAKE_CXX_COMPILER clang++)
SET(CMAKE_ASM_COMPILER_TARGET …
Run Code Online (Sandbox Code Playgroud)

c++ windows arm cmake clang

11
推荐指数
1
解决办法
1万
查看次数

标签 统计

arm ×1

c++ ×1

clang ×1

cmake ×1

windows ×1