rabite0 / hunter

The fastest file manager in the galaxy!
Do What The F*ck You Want To Public License
1.31k stars 64 forks source link

Will Not Compile(gstreamer error) #54

Closed ghost closed 5 years ago

ghost commented 5 years ago

Using the latest version of Rustup and a freshly installed Pop! OS I keep running into an error every single time I run cargo install hunter the error I get is

https://pastebin.com/t2W0Hd3s

I already double checked and all my gstreamer things were installed correctly. Not sure why I am getting this error. Oh and your preinstalls for Ubuntu/Debian give me this error

Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package gstreamer1.0-devel E: Couldn't find any package by glob 'gstreamer1.0-devel' E: Couldn't find any package by regex 'gstreamer1.0-devel' E: Unable to locate package gst-plugins-base E: Unable to locate package gst-plugins-good

rabite0 commented 5 years ago

Interesting. I don't use Ubuntu or any other Debian derivate, and those build dependencies were provided by other contributors.

It seems like the package gsteramer-app is missing. Are you sure it's installed correctly, including the -dev package? You also need gst-plugins-bad for the pnm (video frame to image) encoder.

That gstreamer stuff is only used for video previews. You can disable them by running "cargo install --no-default-features hunter".

The version on crates.io is rather old, I'm currently refactoring the media-preview stuff into a sub-workspace to isolate it more from the core stuff. I will push that to crates.io in a few days. In the mean time, I recommend using the github master branch.

The install instructions definitely need some improvements.

ghost commented 5 years ago

I triple checked that and it installed. Let me know if you want help rewriting the install instructions I am willing to help.

ghost commented 5 years ago

Even when I did run cargo install --no-default-features hunter I got a bunch of errors

error[E0277]: expected a std::ops::FnOnce<(std::result::Result<&mut T, AError>, &Stale)> closure, found std::boxed::Box<impl FnOnce(Result<&mut T, AError>, &Stale) -> CResult<()> + Send + 'static> --> /home/wesleypennock/.cargo/registry/src/github.com-1ecc6299db9ec823/async_value-0.2.4/src/lib.rs:449:45 449 on_ready_funs.push(Box::new(on_ready))) ^^^^^^^^^^^^^^^^^^ expected an FnOnce<(std::result::Result<&mut T, AError>, &Stale)> closure, found std::boxed::Box<impl FnOnce(Result<&mut T, AError>, &Stale) -> CResult<()> + Send + 'static>
= help: the trait `for<'r, 's> std::ops::FnOnce<(std::result::Result<&'r mut T, AError>, &'s Stale)>` is not implemented for `std::boxed::Box<impl FnOnce(Result<&mut T, AError>, &Stale) -> CResult<()> + Send + 'static>`
= help: consider adding a `where for<'r, 's> std::boxed::Box<impl FnOnce(Result<&mut T, AError>, &Stale) -> CResult<()> + Send + 'static>: std::ops::FnOnce<(std::result::Result<&'r mut T, AError>, &'s Stale)>` bound
= note: required for the cast to the object type `dyn for<'r, 's> std::ops::FnOnce(std::result::Result<&'r mut T, AError>, &'s Stale) -> std::result::Result<(), failure::Error> + std::marker::Send`

error: aborting due to previous error

For more information about this error, try rustc --explain E0277. error: failed to compile hunter v1.2.1, intermediate artifacts can be found at /tmp/cargo-installl5kfn6

Caused by: Could not compile async_value.

To learn more, run the command again with --verbose.

rabite0 commented 5 years ago

You need to compile with a recent nightly compiler, that should fix that one. If you have rustup:

rustup toolchain install nightly rustup default nightly

Then recompile.

ghost commented 5 years ago

I got it installed and it can only be run from within the directory it was created however I can fix that on my end. I am guessing you are in Arch? Want me to close this issue or leave it open for now?

rabite0 commented 5 years ago

I'm on Gentoo.

To install into ~/.cargo/bin run: cargo install --no-default-features --path .

Leave it open as a reminder to improve install instructions.

rabite0 commented 5 years ago

I should add a check in build.rs and warn users when they're not using a nightly compiler.