自定义目标
如果您想为 rustc
尚不支持的目标构建,您可以使用“自定义目标规范”来定义目标。这些目标规范文件是 JSON 格式。要查看主机目标的 JSON,您可以运行
rustc +nightly -Z unstable-options --print target-spec-json
要查看不同目标的 JSON,请添加 --target
标志
rustc +nightly -Z unstable-options --target=wasm32-unknown-unknown --print target-spec-json
要使用自定义目标,请参阅 cargo
的(不稳定的)build-std
功能。
自定义目标查找路径
当 rustc
收到 --target=TARGET
选项(其中 TARGET
是任何字符串)时,它使用以下逻辑
- 如果
TARGET
是内置目标的名称,则使用该目标 - 如果
TARGET
是文件的路径,则将该文件读取为 json 目标 - 否则,从左到右搜索
RUST_TARGET_PATH
环境变量中以冒号分隔的目录列表,以查找名为TARGET.json
的文件。
这些步骤按顺序尝试,因此,如果目标有多个潜在有效的解释,则以首先找到的解释为准。如果这些方法都找不到目标,则会抛出一个错误。