无法覆盖自定义生成的iOS工具链的Rustop工具链

无法覆盖自定义生成的iOS工具链的Rustop工具链,ios,rust,rust-cargo,Ios,Rust,Rust Cargo,我正在用我的铁锈构建自己的工具链。我需要它与iOS架构交叉编译。当尝试设置默认工具链或覆盖当前目录的工具链时,我的工具链名称出现错误。以下是我创建此新工具链所采取的步骤: 创建锈蚀工具链 rustup工具链链接ios$HOME/rustc ios 覆盖当前目录工具链 rustup覆盖设置ios $rustup show 默认主机:x86_64-apple-darwin 错误:工具链“ios”不支持组件 信息:原因:无效的工具链名称:“ios” 我尝试过其他符合工具链命名约定的名称,但没有效

我正在用我的铁锈构建自己的工具链。我需要它与iOS架构交叉编译。当尝试设置默认工具链或覆盖当前目录的工具链时,我的工具链名称出现错误。以下是我创建此新工具链所采取的步骤:

  • 创建锈蚀工具链

    rustup工具链链接ios$HOME/rustc ios
    
  • 覆盖当前目录工具链

    rustup覆盖设置ios
    
  • $rustup show
    默认主机:x86_64-apple-darwin
    错误:工具链“ios”不支持组件
    信息:原因:无效的工具链名称:“ios”
    
    我尝试过其他符合工具链命名约定的名称,但没有效果:

    $rustup工具链链接stable-2016-07-19-x86_64-apple-ios$HOME/rustc-ios
    错误:自定义工具链名称无效:“stable-2016-07-19-x86_64-apple-ios”
    $rustup工具链链接stable-x86_64-apple-ios$HOME/rustc-ios
    错误:自定义工具链名称无效:“stable-x86_64-apple-ios”
    $rustup工具链链接x86_64-apple-ios$HOME/rustc ios
    
    [更新]

    至于方法#2,当我进行货物构建时,我仍然看到编译器从我为Rustop工具链安装的目标(即,我为#1 in/Users/test user/src/test rust lib/target/)链接Arm库:


    Arm库不是应该从我构建的rustc中提取出来吗?

    我怀疑您在
    rustup show
    中看到的行为是rustup中与特定命令相关的一个bug。我得调查一下


    使用
    rustup link
    rustup override
    配置自定义工具链后,如果尝试使用自定义工具链进行构建,会发生什么情况?

    Hey@brson,我在上面发布了一些货物构建的输出。我不完全相信rustup工具链正在被使用,因为我仍然看到从我从rustup add target安装的库中加载的Arm库。Arm库应该是从我自己制作的rustc中提取出来的,对吧?在你粘贴的输出截图中有一堆——cargo正在传递给rustc的外部标志,告诉它在某个地方寻找板条箱,但这些板条箱是cargo自己制作的。此输出没有说明编译器附带的板条箱(即标准库)的位置。有两种方法可以检查rustc是否正在从自定义工具链加载标准库:首先运行
    rustc--sysroot
    。这将输出到“sysroot”的路径,该目录包含std。其次,您可以设置环境变量
    RUST\u LOG=rustc\u metadata::creader
    。rustc应该喷出一堆板条箱装载诊断。“已解析板条箱”开头的部分应显示每个板条箱的路径,包括sysroot中的路径。$rustc--sysroot错误:缺少选项“sysroot”的参数。当我设置RUST_LOG env变量时,我看不到“已解析板条箱”。我想这可以关闭,由于
    rustup show
    bug已经修复,其余的似乎无法用当前的rustup/rustc/cargo重现
    rustc src/lib.rs 
    --crate-name test-rust-crate
    --crate-type staticlib 
    -g 
    --cfg 
    feature=\"no_network\" 
    --out-dir /Users/test-user/src/test-rust-lib/target/armv7-apple-ios/debug 
    --emit=dep-info,link 
    --target armv7-apple-ios 
    -L dependency=/Users/test-user/src/test-rust-lib/target/armv7-apple-ios/debug 
    -L dependency=/Users/test-user/src/test-rust-lib/target/armv7-apple-ios/debug/deps 
    --extern serde_json=/Users/test-user/src/test-rust-lib/target/armv7-apple-ios/debug/deps/libserde_json-55921106e25a0359.rlib 
    --extern serde=/Users/test-user/src/test-rust-lib/target/armv7-apple-ios/debug/deps/libserde-e281201342afb4d4.rlib 
    --extern time=/Users/test-user/src/test-rust-lib/target/armv7-apple-ios/debug/deps/libtime-750bfdd52feafcb7.rlib 
    --extern libc=/Users/test-user/src/test-rust-lib/target/armv7-apple-ios/debug/deps/liblibc-1f3392fe1afd1313.rlib 
    --extern murmur3=/Users/test-user/src/test-rust-lib/target/armv7-apple-ios/debug/deps/libmurmur3-ab9a44fb20fb9fad.rlib 
    --extern quick_error=/Users/test-user/src/test-rust-lib/target/armv7-apple-ios/debug/deps/libquick_error-729eced693f2612d.rlib 
    --extern url=/Users/test-user/src/test-rust-lib/target/armv7-apple-ios/debug/deps/liburl-4690728b1e11fab3.rlib