buildroot 在编译rust时裁剪平台类型数量的方法

在package/rust/rust.mk下修改宏定义HOST_RUST_CONFIGURE_CMDS

bash 复制代码
define HOST_RUST_CONFIGURE_CMDS
	( \
		echo '[build]'; \
		echo 'target = ["$(RUSTC_TARGET_NAME)"]'; \
		echo 'cargo = "$(HOST_RUST_BIN_DIR)/cargo/bin/cargo"'; \
		echo 'rustc = "$(HOST_RUST_BIN_DIR)/rustc/bin/rustc"'; \
		echo 'python = "$(HOST_DIR)/bin/python$(PYTHON3_VERSION_MAJOR)"'; \
		echo 'submodules = false'; \
		echo 'vendor = true'; \
		echo 'extended = true'; \
		echo 'tools = ["cargo"]'; \
		echo 'compiler-docs = false'; \
		echo 'docs = false'; \
		echo 'verbose = $(HOST_RUST_VERBOSITY)'; \
		echo 'local-rebuild = true'; \
		echo '[install]'; \
		echo 'prefix = "$(HOST_DIR)"'; \
		echo 'sysconfdir = "$(HOST_DIR)/etc"'; \
		echo '[rust]'; \
		echo 'channel = "stable"'; \
		echo 'musl-root = "$(STAGING_DIR)"' ; \
		echo '[target.$(RUSTC_TARGET_NAME)]'; \
		echo 'cc = "$(TARGET_CROSS)gcc"'; \
		echo '[llvm]'; \
		echo 'download-ci-llvm = false'; \
		echo 'ninja = false'; \
		echo 'ldflags = "$(HOST_LDFLAGS)"'; \
	) > $(@D)/config.toml
	    # 修正 LLVM targets,禁止实验性目标
    $(SED) '/^\[llvm\]/a targets = "AArch64;ARM;X86"' $(@D)/config.toml
    $(SED) '/^\[llvm\]/a experimental-targets = ""' $(@D)/config.toml
endef
相关推荐
独泪了无痕8 小时前
Spring Data Redis 快速上手
spring boot·redis·后端
2501_944521598 小时前
Ramda 跨端三方库仓颉适配全流程
开发语言·javascript·flutter·php
行思理8 小时前
go语言学习难度及适合学习的人群
开发语言·学习·golang
wangchunyu11410 小时前
JAVA CompletableFuture异步编程实战
java·开发语言·python
程序 代码狂人11 小时前
切片表与分区表的区别(数据开发面试版)
java·大数据·开发语言·数据仓库·算法
m0_6399069412 小时前
Linux 操作系统入门:目录结构、服务排查常用命令、Shell 脚本基础
linux·运维·后端
meiying883812 小时前
快递单号批量查询Python脚本:从手动到自动化的完整实现
开发语言·python·自动化
holly就是我12 小时前
AI 编程助手为什么跑偏?用开源 ccglass 看清 Prompt、工具调用和 Token 消耗
人工智能·后端
鸿蒙开发12 小时前
共享 Schema 与 SchemaFactory
前端·后端·harmonyos
用户7884773163412 小时前
小程序后端三选一:云开发、.NET WebAPI、Node,我按客户现状分了三种答案
后端