Compiling v1.1.9 (d716e2b40c) #1703

Closed
opened 2026-02-21 00:02:26 -05:00 by deekerman · 5 comments
Owner

Originally created by @matt-hayden on GitHub (Apr 22, 2023).

Bug Description

rustc quits with:

error: non-binding let on a synchronization lock
   --> libs/hbb_common/src/config.rs:659:13
    |
659 |         let _ = CONFIG.read().unwrap(); // for lock
    |             ^   ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it
    |             |
    |             this lock is not assigned to a binding and is immediately dropped
    |
    = note: `#[deny(let_underscore_lock)]` on by default
help: consider binding to an unused variable to avoid immediately dropping the value
    |
659 |         let _unused = CONFIG.read().unwrap(); // for lock
    |             ~~~~~~~
help: consider immediately dropping the value
    |
659 |         drop(CONFIG.read().unwrap()); // for lock
    |         ~~~~~                      +

error: non-binding let on a synchronization lock
   --> libs/hbb_common/src/config.rs:670:13
    |
670 |         let _ = CONFIG.read().unwrap(); // for lock
    |             ^   ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it
    |             |
    |             this lock is not assigned to a binding and is immediately dropped
    |
help: consider binding to an unused variable to avoid immediately dropping the value
    |
670 |         let _unused = CONFIG.read().unwrap(); // for lock
    |             ~~~~~~~
help: consider immediately dropping the value
    |
670 |         drop(CONFIG.read().unwrap()); // for lock
    |         ~~~~~                      +

error: non-binding let on a synchronization lock
   --> libs/hbb_common/src/config.rs:811:13
    |
811 |         let _ = CONFIG.read().unwrap(); // for lock
    |             ^   ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it
    |             |
    |             this lock is not assigned to a binding and is immediately dropped
    |
help: consider binding to an unused variable to avoid immediately dropping the value
    |
811 |         let _unused = CONFIG.read().unwrap(); // for lock
    |             ~~~~~~~
help: consider immediately dropping the value
    |
811 |         drop(CONFIG.read().unwrap()); // for lock
    |         ~~~~~                      +

error: could not compile `hbb_common` due to 3 previous errors
warning: build failed, waiting for other jobs to finish...
error: could not compile `hbb_common` due to 3 previous errors

How to Reproduce

Specific to the official build instructions, my versions are:

cargo 1.69.0 (6e9a83356 2023-04-12)

cmake version 3.26.3

rustc 1.69.0 (84c898d65 2023-04-16)

❯ ${VCPKG_ROOT}/vcpkg --version
vcpkg package management program version 2023-04-07-bedcba5172f5e4b91caac660ab7afe92c27a9895

Expected Behavior

The expected build instructions look like they should work fine with any version of Rust.

Operating system(s) on local side and remote side

Ubuntu 22.04

RustDesk Version(s) on local side and remote side

1.1.9

Screenshots

rustdesk/target/.rustc_info.json

ldd libsciter-gtk.so

Additional Context

No response

Originally created by @matt-hayden on GitHub (Apr 22, 2023). ### Bug Description rustc quits with: ``` error: non-binding let on a synchronization lock --> libs/hbb_common/src/config.rs:659:13 | 659 | let _ = CONFIG.read().unwrap(); // for lock | ^ ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it | | | this lock is not assigned to a binding and is immediately dropped | = note: `#[deny(let_underscore_lock)]` on by default help: consider binding to an unused variable to avoid immediately dropping the value | 659 | let _unused = CONFIG.read().unwrap(); // for lock | ~~~~~~~ help: consider immediately dropping the value | 659 | drop(CONFIG.read().unwrap()); // for lock | ~~~~~ + error: non-binding let on a synchronization lock --> libs/hbb_common/src/config.rs:670:13 | 670 | let _ = CONFIG.read().unwrap(); // for lock | ^ ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it | | | this lock is not assigned to a binding and is immediately dropped | help: consider binding to an unused variable to avoid immediately dropping the value | 670 | let _unused = CONFIG.read().unwrap(); // for lock | ~~~~~~~ help: consider immediately dropping the value | 670 | drop(CONFIG.read().unwrap()); // for lock | ~~~~~ + error: non-binding let on a synchronization lock --> libs/hbb_common/src/config.rs:811:13 | 811 | let _ = CONFIG.read().unwrap(); // for lock | ^ ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it | | | this lock is not assigned to a binding and is immediately dropped | help: consider binding to an unused variable to avoid immediately dropping the value | 811 | let _unused = CONFIG.read().unwrap(); // for lock | ~~~~~~~ help: consider immediately dropping the value | 811 | drop(CONFIG.read().unwrap()); // for lock | ~~~~~ + error: could not compile `hbb_common` due to 3 previous errors warning: build failed, waiting for other jobs to finish... error: could not compile `hbb_common` due to 3 previous errors ``` ### How to Reproduce Specific to the [official build instructions](https://rustdesk.com/docs/en/dev/build/linux/), my versions are: cargo 1.69.0 (6e9a83356 2023-04-12) cmake version 3.26.3 rustc 1.69.0 (84c898d65 2023-04-16) ❯ ${VCPKG_ROOT}/vcpkg --version vcpkg package management program version 2023-04-07-bedcba5172f5e4b91caac660ab7afe92c27a9895 ### Expected Behavior The expected build instructions look like they should work fine with any version of Rust. ### Operating system(s) on local side and remote side Ubuntu 22.04 ### RustDesk Version(s) on local side and remote side 1.1.9 ### Screenshots [rustdesk/target/.rustc_info.json](https://github.com/rustdesk/rustdesk/files/11302071/rustc_info.txt) [ldd libsciter-gtk.so](https://github.com/rustdesk/rustdesk/files/11302075/libsciter-gtk.so-ldd.txt) ### Additional Context _No response_
deekerman 2026-02-21 00:02:26 -05:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@matt-hayden commented on GitHub (Apr 22, 2023):

Confirming that this does not occur with Rust v1.64.0 on the same system

@matt-hayden commented on GitHub (Apr 22, 2023): Confirming that this does not occur with Rust v1.64.0 on the same system
Author
Owner

@rustdesk commented on GitHub (Apr 22, 2023):

#763

@rustdesk commented on GitHub (Apr 22, 2023): #763
Author
Owner

@Allen050329 commented on GitHub (May 12, 2023):

When compiling with rust-nightly:

   --> libs/hbb_common/src/config.rs:659:13
    |
659 |         let _ = CONFIG.read().unwrap(); // for lock
    |             ^   ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it
    |             |
    |             this lock is not assigned to a binding and is immediately dropped
    |
    = note: `#[deny(let_underscore_lock)]` on by default
help: consider binding to an unused variable to avoid immediately dropping the value
    |
659 |         let _unused = CONFIG.read().unwrap(); // for lock
    |             ~~~~~~~
help: consider immediately dropping the value
    |
659 |         drop(CONFIG.read().unwrap()); // for lock
    |         ~~~~~                      +

error: non-binding let on a synchronization lock
   --> libs/hbb_common/src/config.rs:670:13
    |
670 |         let _ = CONFIG.read().unwrap(); // for lock
    |             ^   ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it
    |             |
    |             this lock is not assigned to a binding and is immediately dropped
    |
help: consider binding to an unused variable to avoid immediately dropping the value
    |
670 |         let _unused = CONFIG.read().unwrap(); // for lock
    |             ~~~~~~~
help: consider immediately dropping the value
    |
670 |         drop(CONFIG.read().unwrap()); // for lock
    |         ~~~~~                      +

error: non-binding let on a synchronization lock
   --> libs/hbb_common/src/config.rs:811:13
    |
811 |         let _ = CONFIG.read().unwrap(); // for lock
    |             ^   ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it
    |             |
    |             this lock is not assigned to a binding and is immediately dropped
    |
help: consider binding to an unused variable to avoid immediately dropping the value
    |
811 |         let _unused = CONFIG.read().unwrap(); // for lock
    |             ~~~~~~~
help: consider immediately dropping the value
    |
811 |         drop(CONFIG.read().unwrap()); // for lock
    |         ~~~~~                      +

error: could not compile `hbb_common` (lib) due to 3 previous errors
warning: build failed, waiting for other jobs to finish...
error: could not compile `hbb_common` (lib) due to 3 previous errors
==> 錯誤: build() 遭遇失敗。    正在中止...
 -> error making: rustdesk-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
rustdesk - exit status 4

Using AUR, on Arch Linux, using command yay -S rustdesk

@Allen050329 commented on GitHub (May 12, 2023): When compiling with rust-nightly: ```error: non-binding let on a synchronization lock --> libs/hbb_common/src/config.rs:659:13 | 659 | let _ = CONFIG.read().unwrap(); // for lock | ^ ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it | | | this lock is not assigned to a binding and is immediately dropped | = note: `#[deny(let_underscore_lock)]` on by default help: consider binding to an unused variable to avoid immediately dropping the value | 659 | let _unused = CONFIG.read().unwrap(); // for lock | ~~~~~~~ help: consider immediately dropping the value | 659 | drop(CONFIG.read().unwrap()); // for lock | ~~~~~ + error: non-binding let on a synchronization lock --> libs/hbb_common/src/config.rs:670:13 | 670 | let _ = CONFIG.read().unwrap(); // for lock | ^ ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it | | | this lock is not assigned to a binding and is immediately dropped | help: consider binding to an unused variable to avoid immediately dropping the value | 670 | let _unused = CONFIG.read().unwrap(); // for lock | ~~~~~~~ help: consider immediately dropping the value | 670 | drop(CONFIG.read().unwrap()); // for lock | ~~~~~ + error: non-binding let on a synchronization lock --> libs/hbb_common/src/config.rs:811:13 | 811 | let _ = CONFIG.read().unwrap(); // for lock | ^ ^^^^^^^^^^^^^^^^^^^^^^ this binding will immediately drop the value assigned to it | | | this lock is not assigned to a binding and is immediately dropped | help: consider binding to an unused variable to avoid immediately dropping the value | 811 | let _unused = CONFIG.read().unwrap(); // for lock | ~~~~~~~ help: consider immediately dropping the value | 811 | drop(CONFIG.read().unwrap()); // for lock | ~~~~~ + error: could not compile `hbb_common` (lib) due to 3 previous errors warning: build failed, waiting for other jobs to finish... error: could not compile `hbb_common` (lib) due to 3 previous errors ==> 錯誤: build() 遭遇失敗。 正在中止... -> error making: rustdesk-exit status 4 -> Failed to install the following packages. Manual intervention is required: rustdesk - exit status 4 ``` Using AUR, on Arch Linux, using command ``yay -S rustdesk``
Author
Owner

@awsms commented on GitHub (May 13, 2023):

error: could not compile hbb_common (lib) due to 3 previous errors
warning: build failed, waiting for other jobs to finish...
error: could not compile hbb_common (lib) due to 3 previous errors
==> 錯誤: build() 遭遇失敗。 正在中止...
-> error making: rustdesk-exit status 4
-> Failed to install the following packages. Manual intervention is required:
rustdesk - exit status 4


Using AUR, on Arch Linux, using command `yay -S rustdesk`

Same here.

@awsms commented on GitHub (May 13, 2023): > error: could not compile `hbb_common` (lib) due to 3 previous errors > warning: build failed, waiting for other jobs to finish... > error: could not compile `hbb_common` (lib) due to 3 previous errors > ==> 錯誤: build() 遭遇失敗。 正在中止... > -> error making: rustdesk-exit status 4 > -> Failed to install the following packages. Manual intervention is required: > rustdesk - exit status 4 > ``` > > Using AUR, on Arch Linux, using command `yay -S rustdesk` Same here.
Author
Owner

@Ominai commented on GitHub (Jun 7, 2023):

yay -S RustDesk

is causing 'Failed to install the following packages. Manual intervention is required: RustDesk - exit status 4' on my system as well

@Ominai commented on GitHub (Jun 7, 2023): ``` yay -S RustDesk ``` is causing 'Failed to install the following packages. Manual intervention is required: RustDesk - exit status 4' on my system as well
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/rustdesk-rustdesk#1703
No description provided.