-
Notifications
You must be signed in to change notification settings - Fork 190
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
README.md: document rust requirement #452
base: main
Are you sure you want to change the base?
Conversation
|
README.md
Outdated
@@ -44,6 +44,7 @@ The Wasm-sdk's build process needs some packages : | |||
* `clang` | |||
* `ninja` | |||
* `python3` | |||
* The latest rust toolchain |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like this would indicate that 1.76.0 should work? But you mention that 1.77.0 did not work for you... what did you see?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
see #450
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@abrown do you have any more concerns?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, I kind of was thinking we could be more precise here and since wasm-component-ld
is being successfully built with Rust 1.76.0 in CI we should probably document that. But then I'm confused why 1.77.0 didn't work for you? Or was something else the problem?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i dunno. i merely blindly followed alex's advice to update the toolchain.
but is it worth to block this PR for a month while we don't document such precise verisions for other requirements either? (cmake python etc)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
since it isn't clear to you which version you used
It's clear it was 1.77.0.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, I guess I was the one who misunderstood, sorry! But something still doesn't seem quite right with what you reported. I tried to replicate what you found and I'm seeing that wasm-component-ld
builds just fine with version v1.76.0:
$ cargo install 1.76.0
$ cargo default 1.76.0
$ cargo version
cargo 1.76.0 (c84b36747 2024-01-18)
$ cmake -G Ninja -B build/toolchain -S . -DWASI_SDK_BUILD_TOOLCHAIN=ON -DCMAKE_INSTALL_PREFIX=build/install
...
$ cmake --build build/toolchain --target wasm-component-ld
...
Compiling wasm-component-ld v0.5.6
Finished release [optimized] target(s) in 18.50s
Installing /.../wasi-sdk/build/toolchain/wasm-component-ld/bin/wasm-component-ld
Installed package `wasm-component-ld v0.5.6` (executable `wasm-component-ld`)
If I run the same with v1.75.0, I see the following failure:
error: cannot install package `wasm-component-ld 0.5.6`, it requires rustc 1.76.0 or newer, while the currently active rustc version is 1.75.0
Is there any chance something else was wrong with the environment you ran v1.77.0 in?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, which part of the claim was incorrect? "Latest"?
Yes, this is incorrect. For example when you created this PR Rust 1.79 was the latest Rust release. I believe what you were trying to document originally was that Rust 1.79 was required. As of today, however, Rust 1.80 is the latest Rust release. That means that the claim that the "latest" Rust release is needed is not correct.
Additionally wasm-component-ld
as-used by wasi-sdk requires 1.76.0, and as Andrew pointed out this is tested in CI. This additionally means that the claim that the latest compiler is required is incorrect.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, I guess I was the one who misunderstood, sorry! But something still doesn't seem quite right with what you reported. I tried to replicate what you found and I'm seeing that
wasm-component-ld
builds just fine with version v1.76.0:$ cargo install 1.76.0 $ cargo default 1.76.0 $ cargo version cargo 1.76.0 (c84b36747 2024-01-18) $ cmake -G Ninja -B build/toolchain -S . -DWASI_SDK_BUILD_TOOLCHAIN=ON -DCMAKE_INSTALL_PREFIX=build/install ... $ cmake --build build/toolchain --target wasm-component-ld ... Compiling wasm-component-ld v0.5.6 Finished release [optimized] target(s) in 18.50s Installing /.../wasi-sdk/build/toolchain/wasm-component-ld/bin/wasm-component-ld Installed package `wasm-component-ld v0.5.6` (executable `wasm-component-ld`)
If I run the same with v1.75.0, I see the following failure:
error: cannot install package `wasm-component-ld 0.5.6`, it requires rustc 1.76.0 or newer, while the currently active rustc version is 1.75.0
Is there any chance something else was wrong with the environment you ran v1.77.0 in?
i can still reproduce #450 with rustc 1.77.0 + wasm-component-ld 0.5.5.
(we bumped wasm-component-ld version to 0.5.6, which doesn't seem to have the problem, after this PR.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, this is incorrect. For example when you created this PR Rust 1.79 was the latest Rust release. I believe what you were trying to document originally was that Rust 1.79 was required. As of today, however, Rust 1.80 is the latest Rust release. That means that the claim that the "latest" Rust release is needed is not correct.
ok. i dropped the "latest" claim. the main claim of this PR was "we require rust".
README.md
Outdated
@@ -44,6 +44,7 @@ The Wasm-sdk's build process needs some packages : | |||
* `clang` | |||
* `ninja` | |||
* `python3` | |||
* The latest rust toolchain |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* The latest rust toolchain | |
* [Rust](https://rustup.rs) v1.76.0 or later |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe this should read "cargo
and rustc
v1.76.0 or later" for consistency.
it seems that the build issue mentioned in WebAssembly#450 has been fixed by wasm-component-ld 0.5.6.
Fixes #450