我正在使用Rust的构建创建自己的工具链。我需要这个与iOS架构交叉编译。在尝试设置默认工具链或覆盖当前目录的工具链时,我收到有关工具链名称的错误。这些是我创建这个新工具链的步骤:
创建Rustup工具链
rustup toolchain link ios $HOME/rustc-ios
覆盖当前目录工具链
rustup override set ios
$ rustup show
Default host: x86_64-apple-darwin
error: toolchain 'ios' does not support components
info: caused by: invalid toolchain name: 'ios'
我尝试过其他符合工具链命名约定的名称,但无济于事:
$ rustup toolchain link stable-2016-07-19-x86_64-apple-ios $HOME/rustc-ios
error: invalid custom toolchain name: 'stable-2016-07-19-x86_64-apple-ios'
$ rustup toolchain link stable-x86_64-apple-ios $HOME/rustc-ios
error: invalid custom toolchain name: 'stable-x86_64-apple-ios'
$ rustup toolchain link x86_64-apple-ios $HOME/rustc-ios
[更新]
对于方法#2,当我进行货物构建时,我仍然看到编译器链接来自我为防锈工具链安装的目标的Arm库(即,我在/ Users / test-中为#1安装的目标)用户/ SRC /测试防锈-LIB /目标/):
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
不应该将Arm库从我建立的rustc中拉出来吗?
答案 0 :(得分:2)
我怀疑你在rustup show
中看到的行为是与特定命令相关的生锈错误。我filed an issue要调查一下。
使用rustup link
和rustup override
配置后,尝试使用自定义工具链进行构建时会发生什么?