YtFlow / Maple

A lightweight Universal Windows proxy app based on https://github.com/eycorsican/leaf
Apache License 2.0
1.19k stars 121 forks source link

Build leaf error #18

Closed mikexxma closed 2 years ago

mikexxma commented 2 years ago
error[E0599]: no method named raw found for struct Handle in the current scope --> C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys\windows\fs.rs:360:29 360 self.handle.raw(), ^^^ method not found in Handle

::: C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys\windows\handle.rs:17:1 | 17 | pub struct Handle(OwnedHandle); | ------------------------------- method raw not found for this

error[E0599]: no method named raw found for struct Handle in the current scope --> C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys\windows\fs.rs:388:29 388 self.handle.raw(), ^^^ method not found in Handle

::: C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys\windows\handle.rs:17:1 | 17 | pub struct Handle(OwnedHandle); | ------------------------------- method raw not found for this

error[E0599]: no function or associated item named new found for struct Handle in the current scope --> C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys\windows\stdio_uwp.rs:28:26 28 let handle = Handle::new(handle); ^^^ function or associated item not found in Handle

::: C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys\windows\handle.rs:17:1 | 17 | pub struct Handle(OwnedHandle); | ------------------------------- function or associated item new not found for this

error[E0599]: no method named write found for struct ManuallyDrop<_> in the current scope --> C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys\windows\stdio_uwp.rs:29:31 29 ManuallyDrop::new(handle).write(data) ^^^^^ method not found in ManuallyDrop<_>
 = note: `ManuallyDrop::new(handle)` is a function, perhaps you wish to call it
 = help: items from traits can only be used if the trait is implemented and in scope

note: io::Write defines an item write, perhaps you need to implement it --> C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\io\mod.rs:1368:1 | 1368 | pub trait Write { | ^^^^^^^^^^^^^^^

error[E0599]: no function or associated item named new found for struct Handle in the current scope --> C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys\windows\stdio_uwp.rs:41:30 41 let handle = Handle::new(handle); ^^^ function or associated item not found in Handle

::: C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys\windows\handle.rs:17:1 | 17 | pub struct Handle(OwnedHandle); | ------------------------------- function or associated item new not found for this

error[E0599]: no method named read found for struct ManuallyDrop<_> in the current scope --> C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\sys\windows\stdio_uwp.rs:42:35 42 ManuallyDrop::new(handle).read(buf) ^^^^ method not found in ManuallyDrop<_>
= note: `ManuallyDrop::new(handle)` is a function, perhaps you wish to call it
= help: items from traits can only be used if the trait is implemented and in scope

note: io::Read defines an item read, perhaps you need to implement it --> C:\Users\zenlayer.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\std\src\io\mod.rs:520:1 | 520 | pub trait Read { | ^^^^^^^^^^^^^^

For more information about this error, try rustc --explain E0599. error: could not compile std due to 6 previous errors

mikexxma commented 2 years ago

this is my version and I have installed “nightly-x86_64-pc-windows-msvc'

\leaf-ffi> rustc --version rustc 1.56.0-nightly (29ef6cf16 2021-08-31) \leaf-ffi> rustup toolchain add nightly info: syncing channel updates for 'nightly-x86_64-pc-windows-msvc'

bdbai commented 2 years ago

Seems like recent changes of libstd broke UWP targets. Before we start to look into it, please try the nightly toolchain on 2021-08-13, which is the one I am using.

rustup toolchain install nightly-2021-08-13
mikexxma commented 2 years ago

rustup toolchain install nightly-2021-08-13

it works fine thks

bdbai commented 2 years ago

Given https://github.com/rust-lang/rust/pull/88587 has been merged and building libstd no longer fails since toolchain nightly-2021-09-24, I will close this issue. Feel free to open another one in case build fails again.