-
-
Notifications
You must be signed in to change notification settings - Fork 299
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
Cargo build failure on FreeBSD #188
Comments
Hey @denningsrogue, sorry about this. This is a bug in an old version of one of our dependencies. It happened because we just moved to a new terminal infrastructure (crossterm). I'm going to have to do some dependency management in order to fix this and it might take me a few days to get to it. Meanwhile as a workaround you can install version 0.17.0. Thanks for reporting this - I'll update when this is fixed in a new version. |
Thanks for the quick reply. I was able to fix the problem by changing line 29 in the code for crossterm: From —> 29 | let r = unsafe { ioctl(STDOUT_FILENO, TIOCGWINSZ, &us) }; To —> 29 | let r = unsafe { ioctl(STDOUT_FILENO, TIOCGWINSZ.into(), &us) }; |
On my system the file is: /home/denningsrogue/.cargo/registry/src/gh.neting.cc-1ecc6299db9ec823/crossterm_terminal-0.1.0/src/sys/unix.rs |
Definitely, that's the fix. :) Crossterm fixed it in version 0.22: https://github.com/crossterm-rs/crossterm-terminal/blob/master/CHANGELOG.md#version-022 Locally I managed to get it to work by bumping tui from 0.5 to 0.6 (which requires the right version but has no api changes that break the build), but I want to test this a little more thoroughly before releasing a version. |
Fixed in 0.19.0 |
Cargo install of bandwhich 0.18.1 on freebsd servers running 12.1 RELEASE p9 results in the following failure:
error[E0308]: mismatched types
--> /home/denningsrogue/.cargo/registry/src/gh.neting.cc-1ecc6299db9ec823/crossterm_terminal-0.1.0/src/sys/unix.rs:29:43
|
29 | let r = unsafe { ioctl(STDOUT_FILENO, TIOCGWINSZ, &us) };
| ^^^^^^^^^^
| |
| expected
u64
, foundu32
| help: you can convert an
u32
tou64
:TIOCGWINSZ.into()
error: aborting due to previous error
For more information about this error, try
rustc --explain E0308
.error: could not compile
crossterm_terminal
.To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: failed to compile
bandwhich v0.18.1
, intermediate artifacts can be found at/tmp/cargo-installySajL6
Caused by:
build failed
Updated 0 packages.
Failed to update bandwhich.
Package Installed Latest Needs update
No git packages need updating.
Overall updated 0 packages.
Overall failed to update 1 package: bandwhich.
The text was updated successfully, but these errors were encountered: