gpt4 book ai didi

rust - 编译 rust-src 时未知功能 `llvm_asm`

转载 作者:行者123 更新时间:2023-12-03 11:29:59 26 4
gpt4 key购买 nike

我尝试使用 cargo xbuild 编译 rust-src 但出现此错误:

error[E0635]: unknown feature `llvm_asm`
-> .cargo/registry/src/github.com-1ecc6299db9ec823/compiler_builtins-0.1.28/src/lib.rs:3:12
3 | #![feature(llvm_asm)]

如何解决这个错误?看起来 xbuild 试图用旧的 rustc 编译新的 rust-src。我希望它也使用旧的 rust-src。

我无法更新到更新的 rustc 版本,因为它会导致很多“R_x86_32 重定位”错误,所以我更愿意使用 2020-03-24 版本。

最小示例

命令

cargo new --bin test

rustup component add rust-src

cargo install cargo-xbuild

cd test

ls test
Cargo.toml rust-toolchain src x86_64-unknown-none.json

rust 工具链

nightly-2020-03-24

x86_64-unknown-none.json

{
"llvm-target": "x86_64-unknown-none",
"data-layout": "e-m:e-i64:64-f80:128-n8:16:32:64-S128",
"arch": "x86_64",
"target-endian": "little",
"target-pointer-width": "64",
"target-c-int-width": "32",
"os": "none",
"executables": true,
"linker-flavor": "ld.lld",
"linker": "rust-lld",
"panic-strategy": "abort",
"disable-redzone": true,
"features": "-mmx,-sse,+soft-float"
}

src/main.rs

#![no_std]                // don't link the Rust standard library
#![no_main] // disable all Rust-level entry points
#![allow(non_snake_case)] // disable non snake case name warning

use core::panic::PanicInfo;

#[no_mangle]
pub extern "C" fn _start() -> ! {
loop {}
}

#[panic_handler]
pub fn MyPacnicHandler(_panicInfo: &PanicInfo) -> ! {
loop {}
}

编译

cargo xbuild --target x86_64-unknown-none

rustc --version

rustc 1.44.0-nightly (1edd389cc 2020-03-23)

最佳答案

这是 cargo-xbuild 中的错误.基本上,cargo xbuild 无条件获取最新的 compiler_builtins

一个补丁已经被合并,但还没有在最新的 crates.io 版本中。请参阅此 PR:https://github.com/rust-osdev/cargo-xbuild/pull/75/commits/eede1a1d4c08064763f1943c0920de2270260b33

关于rust - 编译 rust-src 时未知功能 `llvm_asm`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61755610/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com