我想开始一个 Rust no_std 项目,所以我简单地创建了一个新的 cargo 包并在 main.rs 中写了以下几行:
#![feature(lang_items, start)]
#![no_std]
extern crate libc;
#[start]
fn main(_argc: isize, _argv: *const *const u8) -> isize{
1
}
#[panic_handler]
fn panic(_: &core::panic::PanicInfo) -> !{
loop{}
}
#[lang = "eh_personality"] extern fn eh_personality() {}
Cargo.toml 文件如下所示:
[dependencies]
libc = "0.2.71"
[profile.dev]
panic = "abort"
[profile.release]
panic = "abort"
我跑cargo build
了,链接器打印了:
LINK : error LNK2001: unresolved external symbol _mainCRTStartup
该错误背后的原因可能是什么?