首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ToolchainResolution为错误的平台选择工具链

ToolchainResolution为错误的平台选择工具链
EN

Stack Overflow用户
提问于 2022-03-09 02:46:18
回答 1查看 496关注 0票数 0

我定义了一个新的锈蚀工具链如下(从生锈分叉):

代码语言:javascript
复制
toolchain(
    name = "toolchain_for_armv7-linux-androideabi",
    exec_compatible_with = ["@platforms//cpu:x86_64", "@platforms//os:windows"],
    target_compatible_with = ["@platforms//cpu:armv7", "@platforms//os:android"],
    toolchain = "@rust_windows_x86_64//:toolchain_for_armv7-linux-androideabi_impl",
    toolchain_type = "@rules_rust//rust:toolchain",
)

还有一个现有的工具链,定义如下:

代码语言:javascript
复制
toolchain(
    name = "toolchain_for_x86_64-apple-darwin",
    exec_compatible_with = ["@platforms//cpu:x86_64", "@platforms//os:osx"],
    target_compatible_with = ["@platforms//cpu:x86_64", "@platforms//os:osx"],
    toolchain = "@rust_darwin_x86_64//:toolchain_for_x86_64-apple-darwin_impl",
    toolchain_type = "@rules_rust//rust:toolchain",
)

并为该平台建立一个目标:

bazel build --toolchain_resolution_debug=@rules_rust//rust:toolchain --experimental_platforms_api vrst-test/android --platforms=//platforms:android_armv7

下面是ToolchainResolution调试信息的片段:

代码语言:javascript
复制
INFO: ToolchainResolution:   Type @rules_rust//rust:toolchain: target platform @local_config_platform//:host: execution @local_config_platform//:host: Selected toolchain @rust_darwin_x86_64//:toolchain_for_x86_64-apple-darwin_impl
INFO: ToolchainResolution:     Type @rules_rust//rust:toolchain: target platform @local_config_platform//:host: Rejected toolchain @rust_darwin_x86_64//:toolchain_for_armv7-linux-androideabi_impl; mismatching values: armv7, android

由于某些原因,目标平台是@local_config_platform//:host,尽管我将该平台显式地指定为android_armv7,定义如下:

代码语言:javascript
复制
platform(
    name = "android_armv7",
    constraint_values = [
      "@platforms//cpu:armv7",
      "@platforms//os:android",
    ],
)```
EN

回答 1

Stack Overflow用户

发布于 2022-03-09 06:51:23

Bazel解析--platforms指定的目标平台和--host_platform指定的主机平台的工具链。如果您实际上希望为toolchain_for_armv7-linux-androideabi构建主机工具,则需要设置--host_platform

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71403753

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档