Closed shzhxh closed 1 year ago
尝试修复了 zCore/build.rs
中的错误 本地目前可以编译通过
错误原因是std::env::var("PLATFORM")
在 Err(NotPresent)
时 unwrap
导致报错
目前测试指令 cargo bin --arch riscv64 --features "linux board-d1 link-user-img" --output z.bin
和 cargo bin --arch riscv64 --features "linux board-visionfive link-user-img" --output z.bin
可以通过
zCore/build.rs
// let board = std::env::var("PLATFORM").unwrap(); // let kernel_base_addr: u64 = if board.contains("fu740") { // 0xffffffe080200000 // } else { // 0xffffffc080200000 // }; let board = std::env::var("PLATFORM"); let kernel_base_addr: u64 = if board.map_or(false, |x| x.contains("fu740")) { 0xffffffe080200000 } else { 0xffffffc080200000 };
尝试修复了
zCore/build.rs
中的错误 本地目前可以编译通过错误原因是
std::env::var("PLATFORM")
在Err(NotPresent)
时unwrap
导致报错目前测试指令
cargo bin --arch riscv64 --features "linux board-d1 link-user-img" --output z.bin
和cargo bin --arch riscv64 --features "linux board-visionfive link-user-img" --output z.bin
可以通过zCore/build.rs
// let board = std::env::var("PLATFORM").unwrap(); // let kernel_base_addr: u64 = if board.contains("fu740") { // 0xffffffe080200000 // } else { // 0xffffffc080200000 // }; let board = std::env::var("PLATFORM"); let kernel_base_addr: u64 = if board.map_or(false, |x| x.contains("fu740")) { 0xffffffe080200000 } else { 0xffffffc080200000 };
D1 rustsbi启动,星光开发板启动都没问题了。:+1:
commit id : ea7324ff2e8c5fbbf95940d917e52b9f80a39bf5
D1
通过opensbi启动
:x: opensbi + 内存烧写,只进到opensbi无法进到zCore
通过rusbsbi启动
:x: rustsbi , 运行
cargo bin --arch riscv64 --features "linux board-d1 link-user-img" --output z.bin
编译出错星光
:x: 运行
cargo bin --arch riscv64 --features "linux board-visionfive link-user-img" --output z.bin
编译出错Unmatched
:heavy_check_mark: 远程启动正常,libc-test通过