Skip to content
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

Build failure in conrod_vulkano discovered on rasberry pi. #1409

Open
thesnout opened this issue Feb 9, 2021 · 2 comments
Open

Build failure in conrod_vulkano discovered on rasberry pi. #1409

thesnout opened this issue Feb 9, 2021 · 2 comments
Labels

Comments

@thesnout
Copy link

thesnout commented Feb 9, 2021

I see this error after following the instructions in chapter 2:

pi@hovind:~/conrod/conrod $ cargo build
Compiling shaderc-sys v0.6.3
Compiling naga v0.2.0
Compiling futures-executor v0.3.12
Compiling rendy-core v0.5.1
Compiling wayland-client v0.23.6
Compiling vulkano v0.16.0
Compiling futures v0.3.12
Compiling wayland-protocols v0.28.3
error[E0609]: no field shaderf3264 on type vk::PhysicalDeviceFeatures
--> /home/pi/.cargo/registry/src/github.com-1285ae84e5963aae/vulkano-0.16.0/src/features.rs:164:21
|
164 | shader_f3264 => shaderf3264,
| ^^^^^^^^^^^ help: a field with a similar name exists: shaderInt64

error[E0560]: struct vk::PhysicalDeviceFeatures has no field named shaderf3264
--> /home/pi/.cargo/registry/src/github.com-1285ae84e5963aae/vulkano-0.16.0/src/features.rs:164:21
|
164 | shader_f3264 => shaderf3264,
| ^^^^^^^^^^^ vk::PhysicalDeviceFeatures does not have this field
|
= note: available fields are: robustBufferAccess, fullDrawIndexUint32, imageCubeArray, independentBlend, geometryShader ... and 50 others

error[E0308]: mismatched types
--> /home/pi/.cargo/registry/src/github.com-1285ae84e5963aae/vulkano-0.16.0/src/command_buffer/sys.rs:1303:38
|
1303 | vk.CmdSetBlendConstants(cmd, constants); // TODO: correct to pass array?
| ^^^^^^^^^
| |
| expected &[f32; 4], found array [f32; 4]
| help: consider borrowing here: &constants

Compiling wayland-cursor v0.28.3
Compiling wayland-egl v0.28.3
Compiling rendy-resource v0.5.1
Compiling rendy-command v0.5.1
error: aborting due to 3 previous errors

Some errors have detailed explanations: E0308, E0560, E0609.
For more information about an error, try rustc --explain E0308.
error: could not compile vulkano.

pi@hovind:/conrod/conrod $ rustc --version
rustc 1.47.0 (18bf6b4f0 2020-10-07)
pi@hovind:
/conrod/conrod $ cargo --version
cargo 1.47.0 (f3c7e066a 2020-08-28)
pi@hovind:~/conrod/conrod $ uname -srm
Linux 5.4.79-v7l+ armv7l

@alvinhochun
Copy link
Collaborator

Hi, there was some breaking changes in the vk-sys crate which vulkano had been using, which is causing the build error you got. Anyway, you don't need to have the Vulkan code working. If you just run the examples directly as stated in the latest guide, e.g. cargo run --release --example all_winit_glium, it should build fine without triggering those errors.

@mitchmindtree mitchmindtree changed the title Build failure on rasberry pi. Build failure in conrod_vulkano discovered on rasberry pi. Apr 14, 2021
@mitchmindtree
Copy link
Contributor

mitchmindtree commented Apr 14, 2021

Thanks for the report @thesnout!

I'm currently unsure of the best way to work around this issue. I am personally not invested in the vulkano backend and solely use conrod_wgpu which I think wgpu provides a much smoother approach to targeting vulkan on linux these days.

That said, I don't think it's acceptable for us to leave CI in this state. I'm thinking I'll open a PR that splits up the CI for each backend, making it clearer which are currently succeeding and which are not. Edit: I've opened a PR for this at #1412.

mitchmindtree added a commit to mitchmindtree/conrod that referenced this issue Apr 15, 2021
Changes include:

- Update to rusttype 0.8.3 with more efficient text rendering PistonDevelopers#1411.
  This slightly affects how the `Text` render primitive is handled.
  Folks with custom conrod backends may want to take a peak at this PR
  to see how to update.
- Update to wgpu 0.7 and winit 0.24 in `conrod_wgpu`. PistonDevelopers#1413
- Reduce deps by updating to `num` 0.3. PistonDevelopers#1395

NOTE: `conrod_vulkano` will be excluded from this version update due to
`vk-sys` publishing a breaking change not too long ago. See PistonDevelopers#1409.
mitchmindtree added a commit to mitchmindtree/conrod that referenced this issue Apr 15, 2021
Changes include:

- Update to rusttype 0.8.3 with more efficient text rendering PistonDevelopers#1411.
  This slightly affects how the `Text` render primitive is handled.
  Folks with custom conrod backends may want to take a peak at this PR
  to see how to update.
- Update to wgpu 0.7 and winit 0.24 in `conrod_wgpu`. PistonDevelopers#1413
- Reduce deps by updating to `num` 0.3. PistonDevelopers#1395

NOTE: `conrod_vulkano` will be excluded from this version update due to
`vk-sys` publishing a breaking change not too long ago. See PistonDevelopers#1409.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants