Giter Site home page Giter Site logo

[BUG] Error while compiling about eww HOT 2 CLOSED

elkowar avatar elkowar commented on July 17, 2024
[BUG] Error while compiling

from eww.

Comments (2)

bree29 avatar bree29 commented on July 17, 2024 1

Edit : for ubuntu folks, go directly to the bottom for solution.

you didn't follow closely enough, as the issue is that you're not on nightly rust - which is required to build eww

Hello, thanks for you answer. ndeed, I missed the nightly thing. But making nightly default didn't fix the issue.

brieucdug@msi:~/eww
 $ rustup default nightly
info: syncing channel updates for 'nightly-x86_64-unknown-linux-gnu'
info: latest update on 2021-01-10, rust version 1.51.0-nightly (6184f2395 2021-01-09)
info: downloading component 'cargo'
info: downloading component 'clippy'
info: downloading component 'rust-docs'
info: downloading component 'rust-std'
 24.7 MiB /  24.7 MiB (100 %)  19.5 MiB/s in  2s ETA:  0s
info: downloading component 'rustc'
 50.3 MiB /  50.3 MiB (100 %)  28.3 MiB/s in  2s ETA:  0s
info: downloading component 'rustfmt'
info: installing component 'cargo'
info: using up to 500.0 MiB of RAM to unpack components
info: installing component 'clippy'
info: installing component 'rust-docs'
 14.7 MiB /  14.7 MiB (100 %)  11.2 MiB/s in  1s ETA:  0s
info: installing component 'rust-std'
 24.7 MiB /  24.7 MiB (100 %)  12.9 MiB/s in  2s ETA:  0s
info: installing component 'rustc'
 50.3 MiB /  50.3 MiB (100 %)  12.6 MiB/s in  3s ETA:  0s
info: installing component 'rustfmt'
info: default toolchain set to 'nightly-x86_64-unknown-linux-gnu'

  nightly-x86_64-unknown-linux-gnu installed - rustc 1.51.0-nightly (6184f2395 2021-01-09)

info: note that the toolchain 'nightly-x86_64-unknown-linux-gnu' is currently in use (overridden by '/home/brieucdug/eww/rust-toolchain')

brieucdug@msi:~/eww
 $ cargo clean 

brieucdug@msi:~/eww
 $ cargo build --release --verbose
       Fresh unicode-xid v0.2.1
       Fresh unicode-segmentation v1.7.1
       Fresh pkg-config v0.3.19
       Fresh strum v0.18.0
       Fresh version-compare v0.0.10
       Fresh autocfg v1.0.1
       Fresh version_check v0.9.2
       Fresh cfg-if v1.0.0
       Fresh once_cell v1.5.2
       Fresh futures-core v0.3.8
       Fresh futures-sink v0.3.8
       Fresh pin-utils v0.1.0
       Fresh slab v0.4.2
       Fresh futures-io v0.3.8
       Fresh either v1.6.1
       Fresh cfg-if v0.1.10
       Fresh smallvec v1.6.0
       Fresh scopeguard v1.1.0
       Fresh ppv-lite86 v0.2.10
       Fresh lazy_static v1.4.0
       Fresh siphasher v0.3.3
       Fresh pin-project-lite v0.2.1
       Fresh bytes v1.0.0
       Fresh unicode-width v0.1.8
       Fresh unicode-xid v0.0.4
       Fresh strsim v0.8.0
       Fresh ansi_term v0.11.0
       Fresh quick-error v1.2.3
       Fresh ahash v0.3.8
       Fresh regex-syntax v0.6.21
       Fresh vec_map v0.8.2
       Fresh termcolor v1.1.2
       Fresh hashbrown v0.9.1
       Fresh quote v0.3.15
       Fresh beef v0.4.4
       Fresh codemap v0.1.3
       Fresh xmlparser v0.13.3
       Fresh maplit v1.0.2
       Fresh unescape v0.1.0
       Fresh heck v0.3.2
       Fresh futures-task v0.3.8
       Fresh instant v0.1.9
       Fresh futures-channel v0.3.8
       Fresh itertools v0.9.0
       Fresh lock_api v0.4.2
       Fresh peekmore v0.5.6
       Fresh itertools v0.10.0
       Fresh phf_shared v0.8.0
       Fresh thread_local v1.0.1
       Fresh textwrap v0.11.0
       Fresh humantime v1.3.0
       Fresh synom v0.11.3
       Fresh proc-macro2 v1.0.24
       Fresh roxmltree v0.14.0
       Fresh libc v0.2.81
       Fresh memchr v2.3.4
       Fresh proc-macro-hack v0.5.19
       Fresh bitflags v1.2.1
       Fresh proc-macro-nested v0.1.6
       Fresh anyhow v1.0.37
       Fresh log v0.4.11
       Fresh syn v0.11.11
       Fresh byteorder v1.3.4
       Fresh quote v1.0.8
       Fresh getrandom v0.1.16
       Fresh num-traits v0.2.14
       Fresh atty v0.2.14
       Fresh parking_lot_core v0.8.2
       Fresh num_cpus v1.13.0
       Fresh signal-hook-registry v1.3.0
       Fresh aho-corasick v0.7.15
       Fresh inotify-sys v0.1.4
       Fresh simple-signal v1.1.1
       Fresh hashbrown v0.8.2
       Fresh indexmap v1.6.1
       Fresh nix v0.19.1
       Fresh syn v1.0.58
       Fresh proc-macro-error-attr v1.0.4
       Fresh rand_core v0.5.1
       Fresh num-integer v0.1.44
       Fresh mio v0.7.7
       Fresh num-complex v0.3.1
       Fresh debug_stub_derive v0.3.0
       Fresh parking_lot v0.11.1
       Fresh regex v1.4.2
       Fresh clap v2.33.3
       Fresh lasso v0.3.1
       Fresh serde_derive v1.0.118
       Fresh thiserror-impl v1.0.23
       Fresh strum_macros v0.18.0
       Fresh pin-project-internal v1.0.3
       Fresh proc-macro-error v1.0.4
       Fresh futures-macro v0.3.8
       Fresh rand_chacha v0.2.2
       Fresh rand_pcg v0.2.1
       Fresh tokio-macros v1.0.0
       Fresh num-bigint v0.3.1
       Fresh async-stream-impl v0.3.0
       Fresh num-iter v0.1.42
       Fresh derive_more v0.99.11
       Fresh smart-default v0.6.0
       Fresh serde v1.0.118
       Fresh thiserror v1.0.23
       Fresh env_logger v0.7.1
       Fresh pin-project v1.0.3
       Fresh rand v0.7.3
       Fresh tokio v1.0.1
       Fresh num-rational v0.3.2
       Fresh structopt-derive v0.4.14
       Fresh extend v0.3.0
       Fresh async-stream v0.3.0
       Fresh toml v0.5.8
       Fresh futures-util v0.3.8
       Fresh phf_generator v0.8.0
       Fresh bincode v1.3.1
       Fresh pretty_env_logger v0.4.0
       Fresh system-deps v1.3.2
       Fresh proc-macro-crate v0.1.5
       Fresh futures-executor v0.3.8
       Fresh phf_macros v0.8.0
       Fresh tokio-stream v0.1.1
       Fresh num v0.3.1
       Fresh inotify v0.9.2
       Fresh structopt v0.3.21
       Fresh glib-macros v0.10.1
       Fresh futures v0.3.8
       Fresh phf v0.8.0
       Fresh tokio-util v0.6.0
       Fresh glib-sys v0.10.1
       Fresh grass v0.10.4
       Fresh gobject-sys v0.10.0
       Fresh cairo-sys-rs v0.10.0
       Fresh glib v0.10.3
       Fresh gio-sys v0.10.1
       Fresh pango-sys v0.10.0
       Fresh atk-sys v0.10.0
       Fresh gdk-pixbuf-sys v0.10.0
       Fresh gio v0.9.1
       Fresh cairo-rs v0.9.1
       Fresh pango v0.9.1
       Fresh atk v0.9.0
       Fresh gdk-sys v0.10.0
       Fresh gdk-pixbuf v0.9.0
       Fresh gtk-sys v0.10.0
       Fresh gdk v0.13.2
       Fresh gtk v0.9.2
   Compiling eww v0.1.0 (/home/brieucdug/eww)
     Running `rustc --crate-name eww --edition=2018 src/main.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C opt-level=3 -C metadata=b4a8ef6d35e6c69d -C extra-filename=-b4a8ef6d35e6c69d --out-dir /home/brieucdug/eww/target/release/deps -L dependency=/home/brieucdug/eww/target/release/deps --extern anyhow=/home/brieucdug/eww/target/release/deps/libanyhow-4c93d61ddd772d7d.rlib --extern async_stream=/home/brieucdug/eww/target/release/deps/libasync_stream-10c23430b97bd9da.rlib --extern bincode=/home/brieucdug/eww/target/release/deps/libbincode-2b6cf61d15bf1be5.rlib --extern debug_stub_derive=/home/brieucdug/eww/target/release/deps/libdebug_stub_derive-b9b53ee9056cca3d.so --extern derive_more=/home/brieucdug/eww/target/release/deps/libderive_more-eee836ee4c3bdf2d.so --extern extend=/home/brieucdug/eww/target/release/deps/libextend-f972a4c0e2e32b1c.so --extern futures_core=/home/brieucdug/eww/target/release/deps/libfutures_core-aa3bf7ddd0190f8b.rlib --extern futures_util=/home/brieucdug/eww/target/release/deps/libfutures_util-a04bac1776425920.rlib --extern gdk=/home/brieucdug/eww/target/release/deps/libgdk-a75b37d57017dbe4.rlib --extern gdk_pixbuf=/home/brieucdug/eww/target/release/deps/libgdk_pixbuf-2c61b8a8e0eddecf.rlib --extern gio=/home/brieucdug/eww/target/release/deps/libgio-e4763d354af23aea.rlib --extern glib=/home/brieucdug/eww/target/release/deps/libglib-b122479cc3b62b92.rlib --extern grass=/home/brieucdug/eww/target/release/deps/libgrass-1897f50db3f41ebd.rlib --extern gtk=/home/brieucdug/eww/target/release/deps/libgtk-98b9ab47bf3b3caf.rlib --extern inotify=/home/brieucdug/eww/target/release/deps/libinotify-b0be9a87afb282b4.rlib --extern itertools=/home/brieucdug/eww/target/release/deps/libitertools-6c2d5cc7c5a630f5.rlib --extern lazy_static=/home/brieucdug/eww/target/release/deps/liblazy_static-2167c1732418bde8.rlib --extern libc=/home/brieucdug/eww/target/release/deps/liblibc-28439c95f25d4cc8.rlib --extern log=/home/brieucdug/eww/target/release/deps/liblog-5be730c692f61d0c.rlib --extern maplit=/home/brieucdug/eww/target/release/deps/libmaplit-32f3c4d7594b4da4.rlib --extern nix=/home/brieucdug/eww/target/release/deps/libnix-167cd99bd6c59fa1.rlib --extern num=/home/brieucdug/eww/target/release/deps/libnum-1a0ff8c2fdb8223a.rlib --extern pretty_env_logger=/home/brieucdug/eww/target/release/deps/libpretty_env_logger-e4cfa79868418d9f.rlib --extern regex=/home/brieucdug/eww/target/release/deps/libregex-2f9d8deed112c301.rlib --extern roxmltree=/home/brieucdug/eww/target/release/deps/libroxmltree-7aa185c8d2dcd620.rlib --extern serde=/home/brieucdug/eww/target/release/deps/libserde-f3abc3777e86c3b4.rlib --extern simple_signal=/home/brieucdug/eww/target/release/deps/libsimple_signal-9420536cd39f22f6.rlib --extern smart_default=/home/brieucdug/eww/target/release/deps/libsmart_default-e535ebd6ee015c23.so --extern structopt=/home/brieucdug/eww/target/release/deps/libstructopt-a8683cf4f00d6b1d.rlib --extern tokio=/home/brieucdug/eww/target/release/deps/libtokio-bfbf8313a78a6d1d.rlib --extern tokio_stream=/home/brieucdug/eww/target/release/deps/libtokio_stream-62a59a48bc926181.rlib --extern tokio_util=/home/brieucdug/eww/target/release/deps/libtokio_util-bcb7907b4c4ee6f3.rlib --extern unescape=/home/brieucdug/eww/target/release/deps/libunescape-89cb55b6e89a2cf5.rlib`
error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:1:1
  |
1 | #![feature(trace_macros)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:2:1
  |
2 | #![feature(slice_concat_trait)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:3:1
  |
3 | #![feature(result_cloned)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:4:1
  |
4 | #![feature(iterator_fold_self)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:5:1
  |
5 | #![feature(try_blocks)]
  | ^^^^^^^^^^^^^^^^^^^^^^^

error[E0554]: `#![feature]` may not be used on the stable release channel
 --> src/main.rs:6:1
  |
6 | #![feature(str_split_once)]
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0277]: arrays only have std trait implementations for lengths 0..=32
   --> src/server.rs:121:49
    |
121 |     let mut event_stream = inotify.event_stream(&mut buffer)?;
    |                                                 ^^^^^^^^^^^ the trait `std::array::LengthAtMost32` is not implemented for `[u8; 1024]`
    |
    = note: required because of the requirements on the impl of `std::convert::AsMut<[u8]>` for `[u8; 1024]`
    = note: required because of the requirements on the impl of `std::convert::AsMut<[u8]>` for `&mut [u8; 1024]`

error[E0599]: no method named `next` found for struct `inotify::stream::EventStream<&mut [u8; 1024]>` in the current scope
   --> src/server.rs:124:40
    |
124 |         Some(Ok(event)) = event_stream.next() => {
    |                                        ^^^^ method not found in `inotify::stream::EventStream<&mut [u8; 1024]>`
    | 
   ::: /home/brieucdug/.cargo/registry/src/github.com-1ecc6299db9ec823/inotify-0.9.2/src/stream.rs:21:1
    |
21  | pub struct EventStream<T> {
    | -------------------------
    | |
    | doesn't satisfy `_: futures_core::stream::Stream`
    | doesn't satisfy `_: futures_util::stream::stream::StreamExt`
    |
    = note: the method `next` exists but the following trait bounds were not satisfied:
            `inotify::stream::EventStream<&mut [u8; 1024]>: futures_core::stream::Stream`
            which is required by `inotify::stream::EventStream<&mut [u8; 1024]>: futures_util::stream::stream::StreamExt`

error[E0599]: no method named `poll` found for struct `std::pin::Pin<&mut _>` in the current scope
   --> src/server.rs:123:5
    |
123 | /     crate::loop_select_exiting! {
124 | |         Some(Ok(event)) = event_stream.next() => {
125 | |             try_logging_errors!("handling change of config file" => {
126 | |                 if event.wd == config_file_descriptor {
...   |
139 | |         else => break,
140 | |     }
    | |_____^ method not found in `std::pin::Pin<&mut _>`
    |
    = note: `fut` is a function, perhaps you wish to call it
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0599]: no method named `poll` found for struct `std::pin::Pin<_>` in the current scope
   --> src/server.rs:123:5
    |
123 | /     crate::loop_select_exiting! {
124 | |         Some(Ok(event)) = event_stream.next() => {
125 | |             try_logging_errors!("handling change of config file" => {
126 | |                 if event.wd == config_file_descriptor {
...   |
139 | |         else => break,
140 | |     }
    | |_____^ method not found in `std::pin::Pin<_>`
    |
    = note: `fut` is a function, perhaps you wish to call it
    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to 10 previous errors

Some errors have detailed explanations: E0277, E0554, E0599.
For more information about an error, try `rustc --explain E0277`.
error: could not compile `eww`.

Caused by:
  process didn't exit successfully: `rustc --crate-name eww --edition=2018 src/main.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C opt-level=3 -C metadata=b4a8ef6d35e6c69d -C extra-filename=-b4a8ef6d35e6c69d --out-dir /home/brieucdug/eww/target/release/deps -L dependency=/home/brieucdug/eww/target/release/deps --extern anyhow=/home/brieucdug/eww/target/release/deps/libanyhow-4c93d61ddd772d7d.rlib --extern async_stream=/home/brieucdug/eww/target/release/deps/libasync_stream-10c23430b97bd9da.rlib --extern bincode=/home/brieucdug/eww/target/release/deps/libbincode-2b6cf61d15bf1be5.rlib --extern debug_stub_derive=/home/brieucdug/eww/target/release/deps/libdebug_stub_derive-b9b53ee9056cca3d.so --extern derive_more=/home/brieucdug/eww/target/release/deps/libderive_more-eee836ee4c3bdf2d.so --extern extend=/home/brieucdug/eww/target/release/deps/libextend-f972a4c0e2e32b1c.so --extern futures_core=/home/brieucdug/eww/target/release/deps/libfutures_core-aa3bf7ddd0190f8b.rlib --extern futures_util=/home/brieucdug/eww/target/release/deps/libfutures_util-a04bac1776425920.rlib --extern gdk=/home/brieucdug/eww/target/release/deps/libgdk-a75b37d57017dbe4.rlib --extern gdk_pixbuf=/home/brieucdug/eww/target/release/deps/libgdk_pixbuf-2c61b8a8e0eddecf.rlib --extern gio=/home/brieucdug/eww/target/release/deps/libgio-e4763d354af23aea.rlib --extern glib=/home/brieucdug/eww/target/release/deps/libglib-b122479cc3b62b92.rlib --extern grass=/home/brieucdug/eww/target/release/deps/libgrass-1897f50db3f41ebd.rlib --extern gtk=/home/brieucdug/eww/target/release/deps/libgtk-98b9ab47bf3b3caf.rlib --extern inotify=/home/brieucdug/eww/target/release/deps/libinotify-b0be9a87afb282b4.rlib --extern itertools=/home/brieucdug/eww/target/release/deps/libitertools-6c2d5cc7c5a630f5.rlib --extern lazy_static=/home/brieucdug/eww/target/release/deps/liblazy_static-2167c1732418bde8.rlib --extern libc=/home/brieucdug/eww/target/release/deps/liblibc-28439c95f25d4cc8.rlib --extern log=/home/brieucdug/eww/target/release/deps/liblog-5be730c692f61d0c.rlib --extern maplit=/home/brieucdug/eww/target/release/deps/libmaplit-32f3c4d7594b4da4.rlib --extern nix=/home/brieucdug/eww/target/release/deps/libnix-167cd99bd6c59fa1.rlib --extern num=/home/brieucdug/eww/target/release/deps/libnum-1a0ff8c2fdb8223a.rlib --extern pretty_env_logger=/home/brieucdug/eww/target/release/deps/libpretty_env_logger-e4cfa79868418d9f.rlib --extern regex=/home/brieucdug/eww/target/release/deps/libregex-2f9d8deed112c301.rlib --extern roxmltree=/home/brieucdug/eww/target/release/deps/libroxmltree-7aa185c8d2dcd620.rlib --extern serde=/home/brieucdug/eww/target/release/deps/libserde-f3abc3777e86c3b4.rlib --extern simple_signal=/home/brieucdug/eww/target/release/deps/libsimple_signal-9420536cd39f22f6.rlib --extern smart_default=/home/brieucdug/eww/target/release/deps/libsmart_default-e535ebd6ee015c23.so --extern structopt=/home/brieucdug/eww/target/release/deps/libstructopt-a8683cf4f00d6b1d.rlib --extern tokio=/home/brieucdug/eww/target/release/deps/libtokio-bfbf8313a78a6d1d.rlib --extern tokio_stream=/home/brieucdug/eww/target/release/deps/libtokio_stream-62a59a48bc926181.rlib --extern tokio_util=/home/brieucdug/eww/target/release/deps/libtokio_util-bcb7907b4c4ee6f3.rlib --extern unescape=/home/brieucdug/eww/target/release/deps/libunescape-89cb55b6e89a2cf5.rlib` (exit code: 1)

What am I missing ?


Edit : these don't resolve my issue

brieucdug@msi:~/eww
 $ cargo update
    Updating crates.io index
    Updating byteorder v1.3.4 -> v1.4.2
    Updating futures v0.3.8 -> v0.3.9
    Updating futures-channel v0.3.8 -> v0.3.9
    Updating futures-core v0.3.8 -> v0.3.9
    Updating futures-executor v0.3.8 -> v0.3.9
    Updating futures-io v0.3.8 -> v0.3.9
    Updating futures-macro v0.3.8 -> v0.3.9
    Updating futures-sink v0.3.8 -> v0.3.9
    Updating futures-task v0.3.8 -> v0.3.9
    Updating futures-util v0.3.8 -> v0.3.9
    Updating libc v0.2.81 -> v0.2.82
    Removing pin-project v1.0.3
    Removing pin-project-internal v1.0.3
    Updating pin-project-lite v0.2.1 -> v0.2.3
    Updating regex v1.4.2 -> v1.4.3
    Updating regex-syntax v0.6.21 -> v0.6.22
    Updating smallvec v1.6.0 -> v1.6.1
    Updating thread_local v1.0.1 -> v1.1.0
brieucdug@msi:~/eww
 $ rustup install nightly
info: syncing channel updates for 'nightly-x86_64-unknown-linux-gnu'

  nightly-x86_64-unknown-linux-gnu unchanged - rustc 1.51.0-nightly (6184f2395 2021-01-09)
brieucdug@msi:~/eww
 $ rustup override add nightly
info: using existing install for 'nightly-x86_64-unknown-linux-gnu'
info: override toolchain for '/home/brieucdug/eww' set to 'nightly-x86_64-unknown-linux-gnu'

  nightly-x86_64-unknown-linux-gnu unchanged - rustc 1.51.0-nightly (6184f2395 2021-01-09)

Solution

I had 2 cargo installed. One with apt install ; the other one with snap (called with rustup.cargo). cargo --version was wayyyy old, and no way to update it apparently.
In fact, rustup installed with snap (since not available in depots) is ****.
You also have to apt remove rustc

then install rustup properly
https://rustup.rs/

and then

rustup install nightly
rustup default nightly
cargo clean
cargo build --release

from eww.

elkowar avatar elkowar commented on July 17, 2024

you didn't follow closely enough, as the issue is that you're not on nightly rust - which is required to build eww

from eww.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.