eruption-project / eruption

Realtime RGB LED Driver for Linux
https://eruption-project.org/
GNU General Public License v3.0
270 stars 33 forks source link

Build is failing #51

Closed mixolydianmel closed 3 years ago

mixolydianmel commented 3 years ago

Describe the bug Both using paru to build and cloning the repo directly and following the instructions results in the build failing.

To Reproduce Steps to reproduce the behavior:

  1. Clone the git repository
  2. cd into the directory
  3. Run cargo build --all --release

Expected behavior The build completes and an executable is the result.

Logs

   Compiling dbus-tokio v0.7.3
error[E0277]: the trait bound `i32: std::os::unix::io::AsRawFd` is not satisfied
   --> /home/caden/.cargo/registry/src/github.com-1ecc6299db9ec823/dbus-tokio-0.7.3/src/connection.rs:59:16
    |
59  |     Registered(AsyncFd<RawFd>),
    |                ^^^^^^^^^^^^^^ the trait `std::os::unix::io::AsRawFd` is not implemented for `i32`
    |
   ::: /home/caden/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.2.0/src/io/async_fd.rs:137:23
    |
137 | pub struct AsyncFd<T: AsRawFd> {
    |                       ------- required by this bound in `tokio::io::unix::AsyncFd`

error[E0277]: the trait bound `i32: std::os::unix::io::AsRawFd` is not satisfied
   --> /home/caden/.cargo/registry/src/github.com-1ecc6299db9ec823/dbus-tokio-0.7.3/src/connection.rs:189:34
    |
189 |     poll_ready: impl FnOnce() -> task::Poll<std::io::Result<AsyncFdReadyGuard<'a, RawFd>>>,
    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::os::unix::io::AsRawFd` is not implemented for `i32`
    |
   ::: /home/caden/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.2.0/src/io/async_fd.rs:148:37
    |
148 | pub struct AsyncFdReadyGuard<'a, T: AsRawFd> {
    |                                     ------- required by this bound in `tokio::io::unix::AsyncFdReadyGuard`

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0277`.
error: could not compile `dbus-tokio`.

To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: build failed

Please complete the following information:

Additional context This is a problem with installing the product. I cannot get an executable, so this is not about the actual program itself. This is about the install process.

mixolydianmel commented 3 years ago

This looks to be an error in the dbus-tokio lib, although I'm not quite sure

X3n0m0rph59 commented 3 years ago

Hi @cadenhenrich, thanks for reporting this issue!

This seems to be related to an outdated version of rust. Eruption needs at least the current stable version 1.50.0 to compile. I suspect that you are using the old stable release of rust.

 $ rustc --version

If you are using rustup from https://rustup.rs/, you can switch to the stable branch of rust by running this command:

 $ rustup default stable
mixolydianmel commented 3 years ago

Yep, pretty sure this was the issue, must have been on another version of rust from another project I'm working on. Closing the issue.

mixolydianmel commented 3 years ago

Also, if there is a way to include rustup default stable in the AUR install, that would probably be a good idea since I was also unable to install using that method.