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
相关推荐
星栈1 小时前
深度复盘:比 EventLoop 更隐蔽!Node 微任务堆积引发的线上接口雪崩事故
后端·node.js
名字还没想好☜2 小时前
Go slice 的 append 陷阱:共享底层数组导致的数据串改
开发语言·后端·golang·go·slice
bitbrowser2 小时前
Claude 账号频繁被封?转向国内可直接使用的 AI 工具
开发语言·php
诸神缄默不语2 小时前
FastAPI后端配置CORS中间件支持浏览器跨域访问
后端·fastapi
white_ant2 小时前
15-ASCII 转换工具使用指南
rust·tauri·watools
Fanta丶2 小时前
14.Activiti7 网关 排他网关ExclusiveGateway、并行网关ParallelGateway
后端
明月_清风2 小时前
robots.txt 完全指南:从入门到精通
后端·爬虫
jvmind_dev2 小时前
Java GC 实战指南(番外篇):被忽视的隐形杀手 —— Class Unloading 如何拖垮 GC
java·后端
An_s2 小时前
机器学习python之识别图中物品信息
java·linux·开发语言
明月_清风2 小时前
从零写一个"像人"的爬虫:反爬攻防实战指南
后端·爬虫